{"version":3,"sources":["scripts.js","what-input.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.abide.js","foundation.accordion.js","foundation.accordionMenu.js","foundation.drilldown.js","foundation.dropdown.js","foundation.dropdownMenu.js","foundation.equalizer.js","foundation.interchange.js","foundation.offcanvas.js","foundation.orbit.js","foundation.responsiveMenu.js","foundation.responsiveToggle.js","foundation.reveal.js","foundation.slider.js","foundation.smoothScroll.js","foundation.magellan.js","foundation.sticky.js","foundation.tabs.js","foundation.responsiveAccordionTabs.js","foundation.toggler.js","foundation.tooltip.js","animation.js","commerce.js","init-foundation.js","my-account.js","wf-quiz.js","wp-foundation.js"],"names":["_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","document","window","ask","element","ignoreKeys","specificKeys","registerOnChange","unRegisterOnChange","docElem","documentElement","currentElement","currentInput","currentIntent","currentTimestamp","Date","now","shouldPersist","formInputs","functionList","ignoreMap","specificMap","inputMap","keydown","keyup","mousedown","mousemove","MSPointerDown","MSPointerMove","pointerdown","pointermove","touchstart","touchend","isScrolling","mousePos","x","y","pointerMap","2","3","4","supportsPassive","opts","get","addEventListener","e","setUp","detectWheel","addListeners","options","passive","capture","setPersist","PointerEvent","setInput","setIntent","MSPointerEvent","setElement","clearElement","getAttribute","body","sessionStorage","getItem","doUpdate","event","eventKey","which","type","pointerType","ignoreMatch","length","indexOf","specificMatch","shouldUpdate","validateTouch","persistInput","activeElem","activeElement","notFormInput","nodeName","toLowerCase","checkClosest","setAttribute","fireFunctions","detectScrolling","target","classList","toString","replace","removeAttribute","setItem","timestamp","touchIsValid","wheelType","createElement","undefined","onmousewheel","i","len","fn","objPos","match","screenX","screenY","elem","tag","ElementPrototype","Element","prototype","matches","msMatchesSelector","webkitMatchesSelector","closest","parentElement","parentNode","nodeType","Array","opt","arr","eventType","push","position","splice","clearStorage","clear","_typeof2","Symbol","iterator","constructor","require","self","__WEBPACK_EXTERNAL_MODULE_jquery__","cachedModule","__webpack_module_cache__","__webpack_modules__","./js/foundation.core.js","__unused_webpack_module","__webpack_exports__","_typeof","functionName","Function","name","funcNameRegex","results","exec","trim","parseValue","str","isNaN","parseFloat","hyphenate","r","d","Foundation","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__","FOUNDATION_VERSION","version","_plugins","_uuids","plugin","_plugin","className","attrName","registerPlugin","pluginName","uuid","GetYoDigits","$element","attr","concat","data","trigger","unregisterPlugin","removeAttr","removeData","prop","reInit","plugins","isJQ","each","_init","_this","fns","object","plgs","forEach","foundation","string","keys","err","console","error","reflow","$elem","find","addBack","filter","$el","split","option","map","el","er","getFnName","addToJquery","method","$noJS","removeClass","MediaQuery","TypeError","args","slice","arguments","plugClass","ReferenceError","apply","util","throttle","func","delay","timer","context","setTimeout","getTime","vendors","requestAnimationFrame","vp","cancelAnimationFrame","test","navigator","userAgent","lastTime","callback","nextTime","Math","max","clearTimeout","performance","start","bind","oThis","aArgs","fToBind","fNOP","fBound","./js/foundation.core.plugin.js","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","_toPropertyKey","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","res","Number","getPluginName","Plugin","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_0__","_setup","_destroy","hasOwnProperty","./js/foundation.core.utils.js","rtl","namespace","chars","charsLength","floor","random","RegExpEscape","transitionend","end","transitions","transition","WebkitTransition","MozTransition","OTransition","style","triggerHandler","onLoad","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","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","from","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","isArray","parseStyleToObject","styleObject","reduce","ret","param","parts","val","decodeURIComponent","matchMedia","styleMedia","media","script","getElementsByTagName","info","insertBefore","head","appendChild","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","width","queries","current","isInitialized","$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","on","newSize","currentSize","jquery","getter","__esModule","a","definition","toStringTag","_foundation_core__WEBPACK_IMPORTED_MODULE_1__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__","__WEBPACK_EXTERNAL_MODULE__foundation_core__","./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","winY","pageYOffset","winX","pageXOffset","parentDims","GetExplicitOffsets","anchor","alignment","vOffset","hOffset","isOverflow","topVal","leftVal","$eleDims","$anchorDims","Box","./foundation.core","_foundation_util_box__WEBPACK_IMPORTED_MODULE_1__","_foundation_core__WEBPACK_IMPORTED_MODULE_0__","t","__FOUNDATION_EXTERNAL__","f","s","h","u","./js/foundation.util.imageLoader.js","onImagesLoaded","images","singleImageLoaded","unloaded","complete","naturalWidth","image","Image","events","me","off","src","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__","jQuery","./js/foundation.util.keyboard.js","findFocusable","sort","b","aTabIndex","parseInt","bTabIndex","parseKey","keyCodes","keyCode","fromCharCode","toUpperCase","shiftKey","ctrlKey","altKey","getKeyCodes","kcs","k","kc","Keyboard","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","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.util.motion.js","Move","duration","move","ts","prog","anim","animate","isIn","animation","finish","hide","reset","transitionDuration","initClass","activeClass","initClasses","activeClasses","addClass","show","offsetWidth","Motion","animateIn","animateOut","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.util.nest.js","Nest","Feather","menu","role","items","subMenuClass","subItemClass","hasSubClass","applyAria","$item","$sub","children","firstItem","aria-haspopup","aria-label","aria-expanded","data-submenu","aria-hidden","Burn","_foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.util.timer.js","Timer","nameSpace","remain","isPaused","restart","infinite","pause","_foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.util.touch.js","onTouchEnd","removeEventListener","onTouchMove","didMoved","tapEvent","Event","startEvent","isMoving","spotSwipe","dir","touches","pageX","dx","startPosX","elapsedTime","startTime","abs","moveThreshold","timeThreshold","assign","onTouchStart","init","Touch","SpotSwipe","enabled","special","swipe","setup","tap","noop","setupSpotSwipe","setupTouchHandler","addTouch","handleTouch","simulatedEvent","changedTouches","first","eventTypes","touchmove","MouseEvent","bubbles","cancelable","clientX","clientY","createEvent","initMouseEvent","dispatchEvent","_foundation_core__WEBPACK_IMPORTED_MODULE_2__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__","l","v","__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__","./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","elementObserver","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","__","triggersInitialized","IHearYou","./foundation.util.motion","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_2__","jquery__WEBPACK_IMPORTED_MODULE_1__","jquery__WEBPACK_IMPORTED_MODULE_1___default","./js/foundation.abide.js","_inherits","subClass","superClass","create","_setPrototypeOf","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","sham","Proxy","Boolean","valueOf","getPrototypeOf","Abide","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_1__","_Plugin","_super","defaults","isEnabled","formnovalidate","$inputs","merge","$submits","$globalErrors","a11yAttributes","addA11yAttributes","addGlobalErrorA11yAttributes","_events","_this3","resetForm","validateForm","submit","validateOn","validateInput","liveValidate","validateOnBlur","isGood","checked","failedValidators","_this4","$error","siblings","formErrorSelector","add","$label","$els","_this5","labels","_this6","findLabel","$formError","findFormError","labelErrorClass","formErrorClass","inputErrorClass","data-invalid","aria-invalid","addA11yErrorDescribe","$errors","$labels","elemId","label","errorId","a11yErrorLevel","groupName","findRadioLabels","$formErrors","findCheckboxLabels","removeRadioErrorClasses","removeCheckboxErrorClasses","_this7","clearRequire","requiredCheck","validator","manageErrorClasses","_validationIsDisabled","validateRadio","validateCheckbox","validateText","required","validators","equalTo","goodToGo","message","dependentElements","removeErrorClasses","addErrorClasses","checkboxGroupName","_this8","acc","initialized","noError","pattern","inputText","valid","patterns","RegExp","$group","_this9","minRequired","_this10","$form","alpha","alpha_numeric","integer","number","card","cvv","email","url","domain","datetime","date","time","dateISO","month_day_year","day_month_year","color","website","_foundation_abide__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__","./js/foundation.accordion.js","Accordion","_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_2__","ENTER","SPACE","ARROW_DOWN","ARROW_UP","HOME","END","_isInitializing","$tabs","idx","$content","linkId","aria-controls","aria-labelledby","$initActive","_initialAnchor","prev","_openSingleTab","_checkDeepLink","location","hash","$anchor","$link","isOwnAnchor","hasClass","_closeAllTabs","deepLinkSmudge","scrollTop","deepLinkSmudgeOffset","deepLinkSmudgeDelay","deepLink","$tabContent","toggle","$a","multiExpand","previous","last","up","down","updateHistory","history","pushState","replaceState","_openTab","$targetItem","$othersItems","allowAllClosed","_closeTab","$activeContents","targetContentId","slideDown","slideSpeed","slideUp","$activeTabs","stop","./foundation.util.keyboard","_foundation_accordion__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__","./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","$othersActiveSubmenus","$submenus","$allmenus","detach","remove","./foundation.util.nest","_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_box__","./js/foundation.drilldown.js","Drilldown","_foundation_util_box__WEBPACK_IMPORTED_MODULE_4__","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","ev","contains","_hideAll","_bindHandler","_scrollTop","_resize","$scrollTopElement","scrollTopElement","scrollPos","scrollTopOffset","animationDuration","animationEasing","_hide","calcHeight","parentSubMenu","autoFocus","$expandedSubmenus","_setHideSubMenuClasses","index","isLastChild","_setShowSubMenuClasses","blur","maxHeight","unwrap","./foundation.util.box","_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__","./js/foundation.dropdown.js","_get","property","receiver","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","Positionable","allowOverlap","allowBottomOverlap","./js/foundation.positionable.js","nextItem","item","array","currentIdx","_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","./foundation.util.touch","_foundation_dropdown__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","disableHoverOnTouch","disableHover","autoclose","closingTime","isTab","nextSibling","prevSibling","openSub","closeSub","_isVertical","_isRtl","_removeBodyHandler","isItself","$sibs","oldClass","$parentLi","$toClose","somethingToClose","$activeItem","data-is-click","_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__","__WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__","./js/foundation.equalizer.js","Equalizer","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__","eqId","$watched","hasNested","isNested","isOn","onResizeMeBound","_onResizeMe","onPostEqualizedBound","_onPostEqualized","tooSmall","imgs","equalizeOn","_checkMQ","_reflow",".zf.equalizer","mutateme.zf.trigger","_pauseEvents","equalizeOnStack","_isStacked","equalizeByRow","getHeightsByRow","applyHeightByRow","getHeights","applyHeight","heights","offsetHeight","lastElTopOffset","groups","group","elOffsetTop","j","ln","groupsILength","lenJ","./foundation.util.imageLoader","./foundation.util.mediaQuery","_foundation_equalizer__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.interchange.js","Interchange","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_3__","rules","currentPath","_parseOptions","_addBreakpoints","_generateRules","rule","path","types","SPECIAL_QUERIES","rulesList","background-image","response","html","landscape","portrait","retina","_foundation_interchange__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","revealClass","revealOnClass","isRevealed","revealOn","_setMQChecker","transitionTime","contentScroll","inCanvasFor","inCanvasOn","_checkInCanvas","_removeContentClasses","keydown.zf.offCanvas","_handleKeyboard","click.zf.offCanvas","onLoadListener","hasReveal","_","absoluteTopVal","stickyData","_addContentClasses","lastY","pageY","delta","_canScroll","allowUp","allowDown","scrollHeight","clientHeight","forceTo","scrollTo","_stopScrolling","_recordScrollable","_preventDefaultAtEdges","_scrollboxTouchMoved","canvasFocus","_fixStickyElements","_unfixStickyElements","_foundation_offcanvas__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_util_timer__","./js/foundation.orbit.js","Orbit","_foundation_util_timer__WEBPACK_IMPORTED_MODULE_3__","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_4__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_5__","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_6__","_reset","containerClass","$slides","slideClass","$images","initActive","useMUI","_prepareForOrbit","bullets","_loadBullets","autoPlay","geoSync","accessible","$bullets","boxOfBullets","timerDelay","changeSlide","_setWrapperHeight","temp","counter","display","pauseOnHover","navButtons","$controls","nextClass","prevClass","$slide","_updateBullets","isLTR","chosenSlide","$curSlide","$newSlide","$firstSlide","$lastSlide","dirIn","dirOut","infiniteWrap","$oldBullet","$othersBullets","$newBullet","activeStateDescriptor","spans","spanCountInOthersBullets","toArray","every","count","animInFromRight","animOutToRight","animInFromLeft","animOutToLeft","./foundation.util.timer","_foundation_orbit__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_dropdownMenu__","__WEBPACK_EXTERNAL_MODULE__foundation_drilldown__","__WEBPACK_EXTERNAL_MODULE__foundation_accordionMenu__","./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","currentMq","currentPlugin","rulesTree","ruleSize","rulePlugin","isEmptyObject","_checkMediaQueries","matchedMq","destroy","./foundation.accordionMenu","./foundation.drilldown","./foundation.dropdownMenu","_foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.responsiveToggle.js","ResponsiveToggle","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_3__","targetID","$targetMenu","$toggler","animationIn","animationOut","_update","_updateMqHandler","toggleMenu","hideFor","_foundation_responsiveToggle__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.reveal.js","Reveal","_foundation_util_motion__WEBPACK_IMPORTED_MODULE_4__","_foundation_util_triggers__WEBPACK_IMPORTED_MODULE_5__","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","urlWithoutHash","pathname","search","title","_foundation_reveal__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.slider.js","percent","frac","num","absPosition","$handle","clickPos","baseLog","log","Slider","_foundation_util_touch__WEBPACK_IMPORTED_MODULE_4__","SHIFT_ARROW_RIGHT","SHIFT_ARROW_UP","SHIFT_ARROW_DOWN","SHIFT_ARROW_LEFT","inputs","handles","$input","$fill","vertical","disabled","disabledClass","binding","_setInitAttr","doubleSided","$handle2","$input2","setHandles","_setHandlePos","pctOfBar","positionValueFunction","_logTransform","_powTransform","toFixed","nonLinearBase","pow","$hndl","isDbl","h2Val","step","h1Val","vert","hOrW","lOrT","handleDim","elemDim","_pctOfBar","pxToMove","movement","decimal","_setValues","dim","isLeftHndl","handlePct","handlePos","initialStart","moveTime","changedDelay","initVal","initialEnd","aria-valuemax","aria-valuemin","aria-valuenow","aria-orientation","_adjustValue","direction","eventOffset","barDim","windowScroll","scrollLeft","elemOffset","barXY","eventFromBar","offsetPct","_value","firstHndlPos","secndHndlPos","previousVal","nextVal","div","_eventsForHandle","curHandle","handleChangeEvent","_handleEvent","clickSelect","draggable","newValue","_$handle","oldValue","decrease","increase","decreaseFast","increaseFast","invertVertical","_foundation_slider__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.smoothScroll.js","SmoothScroll","_linkClickListener","_handleLinkClick","arrival","_inTransition","scrollToLoc","loc","$loc","round","threshold","_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__","./js/foundation.magellan.js","Magellan","_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_2__","calcPoints","$targets","$links","data-scroll","$active","points","winHeight","innerHeight","docHeight","$tar","pt","targetPoint","deepLinking","_updateActive","scrollme.zf.trigger","_deepLinkScroll","newScrollPos","isScrollingUp","activeIdx","visibleLinks","$oldActive","activeHash","isNewActive","isNewHash","./foundation.smoothScroll","_foundation_magellan__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.sticky.js","emCalc","em","fontSize","Sticky","$container","wasWrapped","container","stickyClass","data-mutate","scrollCount","checkEvery","isStuck","containerHeight","elemHeight","_parsePoints","_setSizes","scroll","_calc","_removeSticky","topPoint","reverse","topAnchor","btm","btmAnchor","pts","breaks","place","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","_foundation_sticky__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.tabs.js","Tabs","_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_3__","$tabTitles","linkClass","linkActiveClass","aria-selected","matchHeight","_setHeight","anchorNoHash","selectTab","_collapse","_addKeyHandler","_addClickHandler","_setHeightMqHandler","_handleTabChange","wrapOnKeys","historyHandled","activeCollapse","$oldTab","$tabLink","$targetContent","_collapseTab","panelActiveClass","$targetAnchor","$activeTab","idStr","hashIdStr","panelClass","panel","_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__","__WEBPACK_EXTERNAL_MODULE__foundation_accordion__","__WEBPACK_EXTERNAL_MODULE__foundation_tabs__","./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","_this$currentRule","_this$currentRule2","_this$currentRule3","./foundation.accordion","./foundation.tabs","_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.toggler.js","Toggler","toggler","$trigger","controls","containsId","_updateARIA","_foundation_toggler__WEBPACK_IMPORTED_MODULE_1__","./js/foundation.tooltip.js","Tooltip","_foundation_positionable__WEBPACK_IMPORTED_MODULE_4__","isClick","tipText","template","_buildTemplate","allowHtml","aria-describedby","data-toggle","triggerClass","elementClassName","SVGElement","baseVal","tooltipWidth","tooltipHeight","templateClasses","tooltipClass","$template","data-is-active","showOn","fadeIn","fadeInDuration","fadeOutDuration","isFocus","disableForTouch","touchCloseText","_foundation_tooltip__WEBPACK_IMPORTED_MODULE_1__","ready","$","click","h1Text","img","controller","ScrollMagic","Controller","Scene","triggerElement","triggerHook","setClassToggle","addTo","tl","gsap","timeline","to","transformOrigin","ease","setTween","rand","textMedia","textNodes","textNode","textId","ornament","_ref3","pos","slide","initQuantityIncrement","change","fieldName","currentVal","packField","ajaxComplete","loginForm","currentQuestion","resize","resizeTO","$selectedAnswers","nextField","empty","$selectedProducts","recProds","topProdID","topProdQty","rec_prod","textAnswers","questionID","question","answer","slick","slidesToShow","slidesToScroll","mobileFirst","arrows","currentSlide","innerWidth","select2","minimumResultsForSearch","dots","speed","nextArrow","prevArrow","responsive","breakpoint","settings"],"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 v5.2.12\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 * bail out if there is no document or window\n\t * (i.e. in a node/non-DOM environment)\n\t *\n\t * Return a stubbed API instead\n\t */\n\t if (typeof document === 'undefined' || typeof window === 'undefined') {\n\t return {\n\t // always return \"initial\" because no interaction will ever be detected\n\t ask: function ask() {\n\t return 'initial';\n\t },\n\n\t // always return null\n\t element: function element() {\n\t return null;\n\t },\n\n\t // no-op\n\t ignoreKeys: function ignoreKeys() {},\n\n\t // no-op\n\t specificKeys: function specificKeys() {},\n\n\t // no-op\n\t registerOnChange: function registerOnChange() {},\n\n\t // no-op\n\t unRegisterOnChange: function unRegisterOnChange() {}\n\t };\n\t }\n\n\t /*\n\t * variables\n\t */\n\n\t // cache document.documentElement\n\t var docElem = document.documentElement;\n\n\t // currently focused dom element\n\t var currentElement = null;\n\n\t // last used input type\n\t var currentInput = 'initial';\n\n\t // last used input intent\n\t var currentIntent = currentInput;\n\n\t // UNIX timestamp of current event\n\t var currentTimestamp = Date.now();\n\n\t // check for a `data-whatpersist` attribute on either the `html` or `body` elements, defaults to `true`\n\t var shouldPersist = false;\n\n\t // form input types\n\t var formInputs = ['button', 'input', 'select', 'textarea'];\n\n\t // empty array for holding callback functions\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 var specificMap = [];\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 touchend: 'touch'\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\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\n\t // check support for passive event listeners\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\t // fail silently\n\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 };\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, capture: true } : true;\n\n\t document.addEventListener('DOMContentLoaded', setPersist, true);\n\n\t // pointer events (mouse, pen, touch)\n\t if (window.PointerEvent) {\n\t window.addEventListener('pointerdown', setInput, true);\n\t window.addEventListener('pointermove', setIntent, true);\n\t } else if (window.MSPointerEvent) {\n\t window.addEventListener('MSPointerDown', setInput, true);\n\t window.addEventListener('MSPointerMove', setIntent, true);\n\t } else {\n\t // mouse events\n\t window.addEventListener('mousedown', setInput, true);\n\t window.addEventListener('mousemove', setIntent, true);\n\n\t // touch events\n\t if ('ontouchstart' in window) {\n\t window.addEventListener('touchstart', setInput, options);\n\t window.addEventListener('touchend', setInput, true);\n\t }\n\t }\n\n\t // mouse wheel\n\t window.addEventListener(detectWheel(), setIntent, options);\n\n\t // keyboard events\n\t window.addEventListener('keydown', setInput, true);\n\t window.addEventListener('keyup', setInput, true);\n\n\t // focus events\n\t window.addEventListener('focusin', setElement, true);\n\t window.addEventListener('focusout', clearElement, true);\n\t };\n\n\t // checks if input persistence should happen and\n\t // get saved state from session storage if true (defaults to `false`)\n\t var setPersist = function setPersist() {\n\t shouldPersist = !(docElem.getAttribute('data-whatpersist') === 'false' || document.body.getAttribute('data-whatpersist') === 'false');\n\n\t if (shouldPersist) {\n\t // check for session variables and use if available\n\t try {\n\t if (window.sessionStorage.getItem('what-input')) {\n\t currentInput = window.sessionStorage.getItem('what-input');\n\t }\n\n\t if (window.sessionStorage.getItem('what-intent')) {\n\t currentIntent = window.sessionStorage.getItem('what-intent');\n\t }\n\t } catch (e) {\n\t // fail silently\n\t }\n\t }\n\n\t // always run these so at least `initial` state is set\n\t doUpdate('input');\n\t doUpdate('intent');\n\t };\n\n\t // checks conditions before updating new input\n\t var setInput = function setInput(event) {\n\t var eventKey = event.which;\n\t var value = inputMap[event.type];\n\n\t if (value === 'pointer') {\n\t value = pointerType(event);\n\t }\n\n\t var ignoreMatch = !specificMap.length && ignoreMap.indexOf(eventKey) === -1;\n\n\t var specificMatch = specificMap.length && specificMap.indexOf(eventKey) !== -1;\n\n\t var shouldUpdate = value === 'keyboard' && eventKey && (ignoreMatch || specificMatch) || value === 'mouse' || value === 'touch';\n\n\t // prevent touch detection from being overridden by event execution order\n\t if (validateTouch(value)) {\n\t shouldUpdate = false;\n\t }\n\n\t if (shouldUpdate && currentInput !== value) {\n\t currentInput = value;\n\n\t persistInput('input', currentInput);\n\t doUpdate('input');\n\t }\n\n\t if (shouldUpdate && currentIntent !== value) {\n\t // preserve intent for keyboard interaction with form fields\n\t var activeElem = document.activeElement;\n\t var notFormInput = activeElem && activeElem.nodeName && (formInputs.indexOf(activeElem.nodeName.toLowerCase()) === -1 || activeElem.nodeName.toLowerCase() === 'button' && !checkClosest(activeElem, 'form'));\n\n\t if (notFormInput) {\n\t currentIntent = value;\n\n\t persistInput('intent', currentIntent);\n\t doUpdate('intent');\n\t }\n\t }\n\t };\n\n\t // updates the doc and `inputTypes` array with new input\n\t var doUpdate = function doUpdate(which) {\n\t docElem.setAttribute('data-what' + which, which === 'input' ? currentInput : currentIntent);\n\n\t fireFunctions(which);\n\t };\n\n\t // updates input intent for `mousemove` and `pointermove`\n\t var setIntent = function setIntent(event) {\n\t var value = inputMap[event.type];\n\n\t if (value === 'pointer') {\n\t value = pointerType(event);\n\t }\n\n\t // test to see if `mousemove` happened relative to the screen to detect scrolling versus mousemove\n\t detectScrolling(event);\n\n\t // only execute if scrolling isn't happening\n\t if ((!isScrolling && !validateTouch(value) || isScrolling && event.type === 'wheel' || event.type === 'mousewheel' || event.type === 'DOMMouseScroll') && currentIntent !== value) {\n\t currentIntent = value;\n\n\t persistInput('intent', currentIntent);\n\t doUpdate('intent');\n\t }\n\t };\n\n\t var setElement = function setElement(event) {\n\t if (!event.target.nodeName) {\n\t // If nodeName is undefined, clear the element\n\t // This can happen if click inside an element.\n\t clearElement();\n\t return;\n\t }\n\n\t currentElement = event.target.nodeName.toLowerCase();\n\t docElem.setAttribute('data-whatelement', currentElement);\n\n\t if (event.target.classList && event.target.classList.length) {\n\t docElem.setAttribute('data-whatclasses', event.target.classList.toString().replace(' ', ','));\n\t }\n\t };\n\n\t var clearElement = function clearElement() {\n\t currentElement = null;\n\n\t docElem.removeAttribute('data-whatelement');\n\t docElem.removeAttribute('data-whatclasses');\n\t };\n\n\t var persistInput = function persistInput(which, value) {\n\t if (shouldPersist) {\n\t try {\n\t window.sessionStorage.setItem('what-' + which, value);\n\t } catch (e) {\n\t // fail silently\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 // prevent touch detection from being overridden by event execution order\n\t var validateTouch = function validateTouch(value) {\n\t var timestamp = Date.now();\n\n\t var touchIsValid = value === 'mouse' && currentInput === 'touch' && timestamp - currentTimestamp < 200;\n\n\t currentTimestamp = timestamp;\n\n\t return touchIsValid;\n\t };\n\n\t // detect version of mouse wheel event to use\n\t // via https://developer.mozilla.org/en-US/docs/Web/API/Element/wheel_event\n\t var detectWheel = function detectWheel() {\n\t var wheelType = null;\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 // runs callback functions\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, type === 'input' ? currentInput : currentIntent);\n\t }\n\t }\n\t };\n\n\t // finds matching element in an object\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 var detectScrolling = function detectScrolling(event) {\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\t };\n\n\t // manual version of `closest()`\n\t var checkClosest = function checkClosest(elem, tag) {\n\t var ElementPrototype = window.Element.prototype;\n\n\t if (!ElementPrototype.matches) {\n\t ElementPrototype.matches = ElementPrototype.msMatchesSelector || ElementPrototype.webkitMatchesSelector;\n\t }\n\n\t if (!ElementPrototype.closest) {\n\t do {\n\t if (elem.matches(tag)) {\n\t return elem;\n\t }\n\n\t elem = elem.parentElement || elem.parentNode;\n\t } while (elem !== null && elem.nodeType === 1);\n\n\t return null;\n\t } else {\n\t return elem.closest(tag);\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: 'intent'|'input'\n\t // 'input' (default): returns the same value as the `data-whatinput` attribute\n\t // 'intent': includes `data-whatintent` value if it's different than `data-whatinput`\n\t ask: function ask(opt) {\n\t return opt === 'intent' ? currentIntent : currentInput;\n\t },\n\n\t // returns string: the currently focused element or null\n\t element: function element() {\n\t return currentElement;\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 // overwrites specific char keys to update on\n\t specificKeys: function specificKeys(arr) {\n\t specificMap = 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 || position === 0) {\n\t functionList.splice(position, 1);\n\t }\n\t },\n\n\t clearStorage: function clearStorage() {\n\t window.sessionStorage.clear();\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_EXTERNAL__\"]=factory(require(\"jquery\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]=factory(root[\"jQuery\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE_jquery__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.core.js\":/*!*******************************!*\\\n !*** ./js/foundation.core.js ***!\n \\*******************************//***/function jsFoundationCoreJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* binding */_Foundation);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_typeof(obj);}var FOUNDATION_VERSION='6.8.1';// 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=(0,_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){if(typeof plugin[prop]==='function'){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();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().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){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=jquery__WEBPACK_IMPORTED_MODULE_0___default()('.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(jquery__WEBPACK_IMPORTED_MODULE_0___default()(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;};jquery__WEBPACK_IMPORTED_MODULE_0___default().fn.foundation=foundation;return jquery__WEBPACK_IMPORTED_MODULE_0___default();}};_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 \\**************************************//***/function jsFoundationCorePluginJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Plugin:function Plugin(){return(/* binding */_Plugin);}/* harmony export */});/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(/*! ./foundation.core.utils */\"./js/foundation.core.utils.js\");function _typeof(obj){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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&&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 \\******************************************//***/function jsFoundationUtilMediaQueryJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */MediaQuery:function MediaQuery(){return(/* binding */_MediaQuery);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_typeof(obj);}function _slicedToArray(arr,i){return _arrayWithHoles(arr)||_iterableToArrayLimit(arr,i)||_unsupportedIterableToArray(arr,i)||_nonIterableRest();}function _nonIterableRest(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o===\"string\")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n===\"Object\"&&o.constructor)n=o.constructor.name;if(n===\"Map\"||n===\"Set\")return Array.from(o);if(n===\"Arguments\"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);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;i0){return 1;}if(typeof jquery__WEBPACK_IMPORTED_MODULE_0___default()(b).attr('tabindex')==='undefined'&&aTabIndex>0){return-1;}if(aTabIndex===0&&bTabIndex>0){return 1;}if(bTabIndex===0&&aTabIndex>0){return-1;}if(aTabIndexbTabIndex){return 1;}});}function parseKey(event){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\nkey=key.replace(/\\W+/,'');if(event.shiftKey)key=\"SHIFT_\".concat(key);if(event.ctrlKey)key=\"CTRL_\".concat(key);if(event.altKey)key=\"ALT_\".concat(key);// Remove trailing underscore, in case only modifiers were used (e.g. only `CTRL_ALT`)\nkey=key.replace(/_$/,'');return key;}var _Keyboard={keys:getKeyCodes(keyCodes),/**\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 */parseKey:parseKey,/**\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 */handleKey:function handleKey(event,component,functions){var commandList=commands[component],keyCode=this.parseKey(event),cmds,command,fn;if(!commandList)return console.warn('Component not defined!');// Ignore the event if it was already handled\nif(event.zfIsKeyHandled===true)return;// This component does not differentiate between ltr and rtl\nif(typeof commandList.ltr==='undefined'){cmds=commandList;// use plain list\n}else{// merge ltr and rtl: if document is rtl, rtl overwrites ltr and vice versa\nif((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__.rtl)())cmds=jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({},commandList.ltr,commandList.rtl);else cmds=jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({},commandList.rtl,commandList.ltr);}command=cmds[keyCode];fn=functions[command];// Execute the handler if found\nif(fn&&typeof fn==='function'){var returnValue=fn.apply();// Mark the event as \"handled\" to prevent future handlings\nevent.zfIsKeyHandled=true;// Execute function when event was handled\nif(functions.handled||typeof functions.handled==='function'){functions.handled(returnValue);}}else{// Execute function when event was not handled\nif(functions.unhandled||typeof functions.unhandled==='function'){functions.unhandled();}}},/**\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 */findFocusable:findFocusable,/**\n * Returns the component name name\n * @param {Object} component - Foundation component, e.g. Slider or Reveal\n * @return String componentName\n */register:function register(componentName,cmds){commands[componentName]=cmds;},// TODO9438: These references to Keyboard need to not require global. Will 'this' work in this context?\n//\n/**\n * Traps the focus in the given element.\n * @param {jQuery} $element jQuery object to trap the foucs into.\n */trapFocus:function trapFocus($element){var $focusable=findFocusable($element),$firstFocusable=$focusable.eq(0),$lastFocusable=$focusable.eq(-1);$element.on('keydown.zf.trapfocus',function(event){if(event.target===$lastFocusable[0]&&parseKey(event)==='TAB'){event.preventDefault();$firstFocusable.focus();}else if(event.target===$firstFocusable[0]&&parseKey(event)==='SHIFT_TAB'){event.preventDefault();$lastFocusable.focus();}});},/**\n * Releases the trapped focus from the given element.\n * @param {jQuery} $element jQuery object to release the focus for.\n */releaseFocus:function releaseFocus($element){$element.off('keydown.zf.trapfocus');}};/*\n * Constants for easier comparing.\n * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE\n */function getKeyCodes(kcs){var k={};for(var kc in kcs){if(kcs.hasOwnProperty(kc))k[kcs[kc]]=kcs[kc];}return k;}/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!********************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.keyboard.js ***!\n \\********************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */Keyboard:function Keyboard(){return(/* reexport safe */_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard);}/* harmony export */});/* 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 import */var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.util.keyboard */\"./js/foundation.util.keyboard.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Keyboard=_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard;}();/******/return __webpack_exports__;/******/}());});//# sourceMappingURL=foundation.util.keyboard.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_EXTERNAL__=t(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.keyboard\"]=t(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery));}(self,function(i,u){return function(){\"use strict\";var n={\"./js/foundation.util.keyboard.js\":function jsFoundationUtilKeyboardJs(e,t,n){n.r(t),n.d(t,{Keyboard:function Keyboard(){return f;}});var t=n(\"jquery\"),r=n.n(t),a=n(\"./foundation.core\"),o={9:\"TAB\",13:\"ENTER\",27:\"ESCAPE\",32:\"SPACE\",35:\"END\",36:\"HOME\",37:\"ARROW_LEFT\",38:\"ARROW_UP\",39:\"ARROW_RIGHT\",40:\"ARROW_DOWN\"},i={};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!(!r()(this).is(\":visible\")||r()(this).attr(\"tabindex\")<0);}).sort(function(e,t){var n,o;return r()(e).attr(\"tabindex\")===r()(t).attr(\"tabindex\")?0:(n=parseInt(r()(e).attr(\"tabindex\"),10),o=parseInt(r()(t).attr(\"tabindex\"),10),void 0===r()(e).attr(\"tabindex\")&&0arr.length)len=arr.length;for(var i=0,arr2=new Array(len);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;ie.length)&&(t=e.length);for(var n=0,r=new Array(t);n').appendTo(document.head);var e,t,n,r=u()(\".foundation-mq\").css(\"font-family\");for(n in t={},e=t=\"string\"==typeof(r=r)&&(r=r.trim().slice(1,-1))?r.split(\"&\").reduce(function(e,t){var t=t.replace(/\\+/g,\" \").split(\"=\"),n=t[0],t=t[1],n=decodeURIComponent(n),t=void 0===t?null:decodeURIComponent(t);return e.hasOwnProperty(n)?Array.isArray(e[n])?e[n].push(t):e[n]=[e[n],t]:e[n]=t,e;},{}):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){e=this.get(e);return!!e&&window.matchMedia(e).matches;},only:function only(e){return e===this._getCurrentSize();},upTo:function upTo(e){e=this.next(e);return!e||!this.atLeast(e);},is:function is(e){var t=s(e.trim().split(\" \").filter(function(e){return!!e.length;}),2),n=t[0],t=t[1],t=void 0===t?\"\":t;if(\"only\"===t)return this.only(n);if(!t||\"up\"===t)return this.atLeast(n);if(\"down\"===t)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)){t=this.queries[t];if(e===t.name)return t.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 '));e=this.queries[e+1];return e?e.name:null;},_getQueryName:function _getQueryName(e){if(\"string\"==typeof e)return e;if(\"object\"===a(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(a(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){var firstItem=$item.children('a:first');firstItem.attr({'aria-haspopup':true,'aria-label':firstItem.attr('aria-label')||firstItem.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','');}};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.nest.js ***!\n \\****************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */Nest:function Nest(){return(/* reexport safe */_foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__.Nest);}/* harmony export */});/* 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 import */var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.util.nest */\"./js/foundation.util.nest.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Nest=_foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__.Nest;}();/******/return __webpack_exports__;/******/}());});//# 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_EXTERNAL__=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));}(self,function(a,i){return function(){\"use strict\";var t={\"./js/foundation.util.nest.js\":function jsFoundationUtilNestJs(e,n,t){t.r(n),t.d(n,{Nest:function Nest(){return o;}});var n=t(\"jquery\"),c=t.n(n),o={Feather:function Feather(e){var o=1li, > li > ul, .menu, .menu > li, [data-submenu] > li\").removeClass(\"\".concat(t,\" \").concat(o,\" \").concat(n,\" is-submenu-item submenu is-active\")).removeAttr(\"data-submenu\").css(\"display\",\"\");}};},\"./foundation.core\":function foundationCore(e){e.exports=a;},jquery:function jquery(e){e.exports=i;}},o={};function r(e){var n=o[e];return void 0!==n||(n=o[e]={exports:{}},t[e](n,n.exports,r)),n.exports;}r.n=function(e){var n=e&&e.__esModule?function(){return e.default;}:function(){return e;};return r.d(n,{a:n}),n;},r.d=function(e,n){for(var t in n){r.o(n,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]});}},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n);};var e,n,u={};return(r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0});})(u),r.d(u,{Foundation:function Foundation(){return e.Foundation;},Nest:function Nest(){return n.Nest;}}),e=r(\"./foundation.core\"),n=r(\"./js/foundation.util.nest.js\"),e.Foundation.Nest=n.Nest,u;}();});//# 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\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.timer\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.util.timer.js\":/*!*************************************!*\\\n !*** ./js/foundation.util.timer.js ***!\n \\*************************************//***/function jsFoundationUtilTimerJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Timer:function Timer(){return(/* binding */_Timer);}/* harmony export */});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));};}/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!*****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.timer.js ***!\n \\*****************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */Timer:function Timer(){return(/* reexport safe */_foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__.Timer);}/* harmony export */});/* 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 import */var _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.util.timer */\"./js/foundation.util.timer.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Timer=_foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__.Timer;}();/******/return __webpack_exports__;/******/}());});//# 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\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\"],e):\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))?exports.__FOUNDATION_EXTERNAL__=e(require(\"./foundation.core\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.timer\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"]));}(self,function(u){return function(){\"use strict\";var n={\"./js/foundation.util.timer.js\":function jsFoundationUtilTimerJs(t,e,n){function o(e,t,n){var o,r,i=this,u=t.duration,a=Object.keys(e.data())[0]||\"timer\",f=-1;this.isPaused=!1,this.restart=function(){f=-1,clearTimeout(r),this.start();},this.start=function(){this.isPaused=!1,clearTimeout(r),f=f<=0?u:f,e.data(\"paused\",!1),o=Date.now(),r=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(r),e.data(\"paused\",!0);var t=Date.now();f-=t-o,e.trigger(\"timerpaused.zf.\".concat(a));};}n.r(e),n.d(e,{Timer:function Timer(){return o;}});},\"./foundation.core\":function foundationCore(t){t.exports=u;}},o={};function r(t){var e=o[t];return void 0!==e||(e=o[t]={exports:{}},n[t](e,e.exports,r)),e.exports;}r.n=function(t){var e=t&&t.__esModule?function(){return t.default;}:function(){return t;};return r.d(e,{a:e}),e;},r.d=function(t,e){for(var n in e){r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]});}},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e);};var t,e,i={};return(r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0});})(i),r.d(i,{Foundation:function Foundation(){return t.Foundation;},Timer:function Timer(){return e.Timer;}}),t=r(\"./foundation.core\"),e=r(\"./js/foundation.util.timer.js\"),t.Foundation.Timer=e.Timer,i;}();});//# sourceMappingURL=foundation.util.timer.min.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(\"jquery\"),require(\"./foundation.core\"));else if(typeof define==='function'&&define.amd)define([\"jquery\",\"./foundation.core\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"jquery\"),require(\"./foundation.core\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]=factory(root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_core__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.util.touch.js\":/*!*************************************!*\\\n !*** ./js/foundation.util.touch.js ***!\n \\*************************************//***/function jsFoundationUtilTouchJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Touch:function Touch(){return(/* binding */_Touch);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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=jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe.moveThreshold&&elapsedTime<=jquery__WEBPACK_IMPORTED_MODULE_0___default().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().Event('swipe',Object.assign({},e)),dir).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default().Event(\"swipe\".concat(dir),Object.assign({},e)));}}}function onTouchStart(e){if(e.touches.length===1){startPosX=e.touches[0].pageX;startEvent=e;isMoving=true;didMoved=false;startTime=new Date().getTime();this.addEventListener('touchmove',onTouchMove,{passive:true===jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe.preventDefault});this.addEventListener('touchend',onTouchEnd,false);}}function init(){this.addEventListener&&this.addEventListener('touchstart',onTouchStart,{passive:true});}// function teardown() {\n// this.removeEventListener('touchstart', onTouchStart);\n// }\nvar 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._init();}_createClass(SpotSwipe,[{key:\"_init\",value:function _init(){jquery__WEBPACK_IMPORTED_MODULE_0___default().event.special.swipe={setup:init};jquery__WEBPACK_IMPORTED_MODULE_0___default().event.special.tap={setup:init};jquery__WEBPACK_IMPORTED_MODULE_0___default().each(['left','up','down','right'],function(){jquery__WEBPACK_IMPORTED_MODULE_0___default().event.special[\"swipe\".concat(this)]={setup:function setup(){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).on('swipe',jquery__WEBPACK_IMPORTED_MODULE_0___default().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(){jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe=new SpotSwipe(jquery__WEBPACK_IMPORTED_MODULE_0___default());};/****************************************************\n * Method for adding pseudo drag events to elements *\n ***************************************************/_Touch.setupTouchHandler=function(){jquery__WEBPACK_IMPORTED_MODULE_0___default().fn.addTouch=function(){this.each(function(i,el){jquery__WEBPACK_IMPORTED_MODULE_0___default()(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 jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe==='undefined'){_Touch.setupSpotSwipe(jquery__WEBPACK_IMPORTED_MODULE_0___default());_Touch.setupTouchHandler(jquery__WEBPACK_IMPORTED_MODULE_0___default());}};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!*****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.touch.js ***!\n \\*****************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_2__.Foundation);},/* harmony export */Touch:function Touch(){return(/* reexport safe */_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch);}/* harmony export */});/* 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 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__);_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch.init(jquery__WEBPACK_IMPORTED_MODULE_0___default());window.Foundation.Touch=_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch;}();/******/return __webpack_exports__;/******/}());});//# 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(\"jquery\"),require(\"./foundation.core\")):\"function\"==typeof define&&define.amd?define([\"jquery\",\"./foundation.core\"],t):\"object\"==(typeof exports===\"undefined\"?\"undefined\":_typeof(exports))?exports.__FOUNDATION_EXTERNAL__=t(require(\"jquery\"),require(\"./foundation.core\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.touch\"]=t(e.jQuery,e.__FOUNDATION_EXTERNAL__[\"foundation.core\"]));}(self,function(c,s){return function(){\"use strict\";var n={\"./js/foundation.util.touch.js\":function jsFoundationUtilTouchJs(e,t,n){n.r(t),n.d(t,{Touch:function Touch(){return f;}});var t=n(\"jquery\"),i=n.n(t);function r(e){return(r=\"function\"==typeof Symbol&&\"symbol\"==_typeof(Symbol.iterator)?function(e){return typeof e===\"undefined\"?\"undefined\":_typeof(e);}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e===\"undefined\"?\"undefined\":_typeof(e);})(e);}function u(e,t){for(var n=0;n=i().spotSwipe.moveThreshold&&s<=i().spotSwipe.timeThreshold?01&&arguments[1]!==undefined?arguments[1]:{};this.$element=element;this.options=jquery__WEBPACK_IMPORTED_MODULE_0___default().extend(true,{},Abide.defaults,this.$element.data(),options);this.isEnabled=true;this.formnovalidate=null;this.className='Abide';// ie9 back compat\nthis._init();}/**\n * Initializes the Abide plugin and calls functions to get Abide functioning on load.\n * @private\n */},{key:\"_init\",value:function _init(){var _this2=this;this.$inputs=jquery__WEBPACK_IMPORTED_MODULE_0___default().merge(// Consider as input to validate:\nthis.$element.find('input').not('[type=\"submit\"]'),// * all input fields expect submit\nthis.$element.find('textarea, select')// * all textareas and select fields\n);this.$submits=this.$element.find('[type=\"submit\"]');var $globalErrors=this.$element.find('[data-abide-error]');// Add a11y attributes to all fields\nif(this.options.a11yAttributes){this.$inputs.each(function(i,input){return _this2.addA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(input));});$globalErrors.each(function(i,error){return _this2.addGlobalErrorA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(error));});}this._events();}/**\n * Initializes events for Abide.\n * @private\n */},{key:\"_events\",value:function _events(){var _this3=this;this.$element.off('.abide').on('reset.zf.abide',function(){_this3.resetForm();}).on('submit.zf.abide',function(){return _this3.validateForm();});this.$submits.off('click.zf.abide keydown.zf.abide').on('click.zf.abide keydown.zf.abide',function(e){if(!e.key||e.key===' '||e.key==='Enter'){e.preventDefault();_this3.formnovalidate=e.target.getAttribute('formnovalidate')!==null;_this3.$element.submit();}});if(this.options.validateOn==='fieldChange'){this.$inputs.off('change.zf.abide').on('change.zf.abide',function(e){_this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));});}if(this.options.liveValidate){this.$inputs.off('input.zf.abide').on('input.zf.abide',function(e){_this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));});}if(this.options.validateOnBlur){this.$inputs.off('blur.zf.abide').on('blur.zf.abide',function(e){_this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));});}}/**\n * Calls necessary functions to update Abide upon DOM change\n * @private\n */},{key:\"_reflow\",value:function _reflow(){this._init();}/**\n * Checks whether the submitted form should be validated or not, consodering formnovalidate and isEnabled\n * @returns {Boolean}\n * @private\n */},{key:\"_validationIsDisabled\",value:function _validationIsDisabled(){if(this.isEnabled===false){// whole validation disabled\nreturn true;}else if(typeof this.formnovalidate==='boolean'){// triggered by $submit\nreturn this.formnovalidate;}// triggered by Enter in non-submit input\nreturn this.$submits.length?this.$submits[0].getAttribute('formnovalidate')!==null:false;}/**\n * Enables the whole validation\n */},{key:\"enableValidation\",value:function enableValidation(){this.isEnabled=true;}/**\n * Disables the whole validation\n */},{key:\"disableValidation\",value:function disableValidation(){this.isEnabled=false;}/**\n * Checks whether or not a form element has the required attribute and if it's checked or not\n * @param {Object} element - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */},{key:\"requiredCheck\",value:function requiredCheck($el){if(!$el.attr('required'))return true;var isGood=true;switch($el[0].type){case'checkbox':isGood=$el[0].checked;break;case'select':case'select-one':case'select-multiple':var opt=$el.find('option:selected');if(!opt.length||!opt.val())isGood=false;break;default:if(!$el.val()||!$el.val().length)isGood=false;}return isGood;}/**\n * Get:\n * - Based on $el, the first element(s) corresponding to `formErrorSelector` in this order:\n * 1. The element's direct sibling('s).\n * 2. The element's parent's children.\n * - Element(s) with the attribute `[data-form-error-for]` set with the element's id.\n *\n * This allows for multiple form errors per input, though if none are found, no form errors will be shown.\n *\n * @param {Object} $el - jQuery object to use as reference to find the form error selector.\n * @param {String[]} [failedValidators] - List of failed validators.\n * @returns {Object} jQuery object with the selector.\n */},{key:\"findFormError\",value:function findFormError($el,failedValidators){var _this4=this;var id=$el.length?$el[0].id:'';var $error=$el.siblings(this.options.formErrorSelector);if(!$error.length){$error=$el.parent().find(this.options.formErrorSelector);}if(id){$error=$error.add(this.$element.find(\"[data-form-error-for=\\\"\".concat(id,\"\\\"]\")));}if(!!failedValidators){$error=$error.not('[data-form-error-on]');failedValidators.forEach(function(v){$error=$error.add($el.siblings(\"[data-form-error-on=\\\"\".concat(v,\"\\\"]\")));$error=$error.add(_this4.$element.find(\"[data-form-error-for=\\\"\".concat(id,\"\\\"][data-form-error-on=\\\"\").concat(v,\"\\\"]\")));});}return $error;}/**\n * Get the first element in this order:\n * 2. The '+_this.options.submenuToggleText+'');}else{$elem.attr({'aria-controls':subId,'aria-expanded':isActive,'id':linkId});}$sub.attr({'aria-labelledby':linkId,'aria-hidden':!isActive,'role':'group','id':subId});});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(){_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};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){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 \\****************************************************************************************************************************************************************************************************//***/function foundationUtilKeyboard(module){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 \\************************************************************************************************************************************************************************************//***/function foundationUtilNest(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!********************************************************!*\\\n !*** ./js/entries/plugins/foundation.accordionMenu.js ***!\n \\********************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */AccordionMenu:function AccordionMenu(){return(/* reexport safe */_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_1__.AccordionMenu);},/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);}/* harmony export */});/* 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 import */var _foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.accordionMenu */\"./js/foundation.accordionMenu.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_accordionMenu__WEBPACK_IMPORTED_MODULE_1__.AccordionMenu,'AccordionMenu');}();/******/return __webpack_exports__;/******/}());});//# 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(\"jquery\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.nest\"),require(\"./foundation.util.box\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.keyboard\",\"./foundation.util.nest\",\"./foundation.util.box\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.nest\"),require(\"./foundation.util.box\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.drilldown\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.nest\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__,__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__,__WEBPACK_EXTERNAL_MODULE__foundation_util_box__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.drilldown.js\":/*!************************************!*\\\n !*** ./js/foundation.drilldown.js ***!\n \\************************************//***/function jsFoundationDrilldownJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Drilldown:function Drilldown(){return(/* binding */_Drilldown);}/* harmony export */});/* 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.plugin */\"./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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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(ev){if(ev.target===_this.$element[0]||jquery__WEBPACK_IMPORTED_MODULE_0___default().contains(_this.$element[0],ev.target)){return;}ev.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((0,_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((0,_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((0,_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((0,_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');$elem.parent().closest('ul').removeClass('invisible');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((0,_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(){_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);}else{_this.$currentMenu=_this.$element;}});}/**\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(){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(){_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 > 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((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.transitionend)(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)),function(){if(autoFocus===true){$elem.find('li > 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;//hide drilldown parent menu when submenu is open\n// this removes it from the dom so that the tab key will take the user to the next visible element\n$elem.parent().closest('ul').addClass('invisible');// add visible class to submenu to override invisible class above\n$submenu.addClass('is-active visible').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')});$elem.parent().closest('ul').removeClass('invisible');$elem.parent('li').attr('aria-expanded',false);$elem.attr('aria-hidden',true);$elem.addClass('is-closing').one((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.transitionend)($elem),function(){$elem.removeClass('is-active is-closing visible');$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 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(){jquery__WEBPACK_IMPORTED_MODULE_0___default()('body').off('.zf.drilldown');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').off('transitionend otransitionend webkitTransitionEnd').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};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){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 \\********************************************************************************************************************************************************************************//***/function foundationUtilBox(module){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 \\****************************************************************************************************************************************************************************************************//***/function foundationUtilKeyboard(module){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 \\************************************************************************************************************************************************************************************//***/function foundationUtilNest(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!****************************************************!*\\\n !*** ./js/entries/plugins/foundation.drilldown.js ***!\n \\****************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Drilldown:function Drilldown(){return(/* reexport safe */_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__.Drilldown);},/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);}/* harmony export */});/* 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 import */var _foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.drilldown */\"./js/foundation.drilldown.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_drilldown__WEBPACK_IMPORTED_MODULE_1__.Drilldown,'Drilldown');}();/******/return __webpack_exports__;/******/}());});//# 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.core\"),require(\"jquery\"),require(\"./foundation.util.keyboard\"),require(\"./foundation.util.box\"),require(\"./foundation.util.motion\"),require(\"./foundation.util.touch\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.keyboard\",\"./foundation.util.box\",\"./foundation.util.motion\",\"./foundation.util.touch\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.keyboard\"),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.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.keyboard\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.box\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__,__WEBPACK_EXTERNAL_MODULE__foundation_util_box__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__,__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.dropdown.js\":/*!***********************************!*\\\n !*** ./js/foundation.dropdown.js ***!\n \\***********************************//***/function jsFoundationDropdownJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Dropdown:function Dropdown(){return(/* binding */_Dropdown);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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().extend(functions,{down:nextSibling,up:prevSibling,next:closeSub,previous:openSub});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default().extend(functions,{down:nextSibling,up:prevSibling,next:openSub,previous:closeSub});}}else{// horizontal menu\nif(_this._isRtl()){// right aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default().extend(functions,{next:prevSibling,previous:nextSibling,down:openSub,up:closeSub});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default().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().extend(functions,{next:closeSub,previous:openSub,down:nextSibling,up:prevSibling});}else{// left aligned\njquery__WEBPACK_IMPORTED_MODULE_0___default().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){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 * Disallows hover on touch devices\n * @option\n * @type {boolean}\n * @default true\n */disableHoverOnTouch:true,/**\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};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){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 \\********************************************************************************************************************************************************************************//***/function foundationUtilBox(module){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 \\****************************************************************************************************************************************************************************************************//***/function foundationUtilKeyboard(module){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 \\************************************************************************************************************************************************************************************//***/function foundationUtilNest(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_nest__;/***/},/***/\"./foundation.util.touch\":/*!****************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.touch\"],\"amd\":\"./foundation.util.touch\",\"commonjs\":\"./foundation.util.touch\",\"commonjs2\":\"./foundation.util.touch\"} ***!\n \\****************************************************************************************************************************************************************************************//***/function foundationUtilTouch(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_touch__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!*******************************************************!*\\\n !*** ./js/entries/plugins/foundation.dropdownMenu.js ***!\n \\*******************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */DropdownMenu:function DropdownMenu(){return(/* reexport safe */_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__.DropdownMenu);},/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);}/* harmony export */});/* 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 import */var _foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.dropdownMenu */\"./js/foundation.dropdownMenu.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_dropdownMenu__WEBPACK_IMPORTED_MODULE_1__.DropdownMenu,'DropdownMenu');}();/******/return __webpack_exports__;/******/}());});//# 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(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.imageLoader\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.mediaQuery\",\"./foundation.util.imageLoader\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.imageLoader\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.equalizer\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.imageLoader\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.equalizer.js\":/*!************************************!*\\\n !*** ./js/foundation.equalizer.js ***!\n \\************************************//***/function jsFoundationEqualizerJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Equalizer:function Equalizer(){return(/* binding */_Equalizer);}/* harmony export */});/* 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_imageLoader__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.util.imageLoader */\"./foundation.util.imageLoader\");/* harmony import */var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__);/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(/*! ./foundation.core.plugin */\"./foundation.core\");/* harmony import */var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__);function _typeof(obj){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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.isNested=this.$element.parentsUntil(document.body,'[data-equalizer]').length>0;this.isOn=false;this._bindHandler={onResizeMeBound:this._onResizeMe.bind(this),onPostEqualizedBound:this._onPostEqualized.bind(this)};var imgs=this.$element.find('img');var tooSmall;if(this.options.equalizeOn){tooSmall=this._checkMQ();jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('changed.zf.mediaquery',this._checkMQ.bind(this));}else{this._events();}if(typeof tooSmall!=='undefined'&&tooSmall===false||typeof tooSmall==='undefined'){if(imgs.length){(0,_foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_2__.onImagesLoaded)(imgs,this._reflow.bind(this));}else{this._reflow();}}}/**\n * Removes event listeners if the breakpoint is too small.\n * @private\n */},{key:\"_pauseEvents\",value:function _pauseEvents(){this.isOn=false;this.$element.off({'.zf.equalizer':this._bindHandler.onPostEqualizedBound,'resizeme.zf.trigger':this._bindHandler.onResizeMeBound,'mutateme.zf.trigger':this._bindHandler.onResizeMeBound});}/**\n * function to handle $elements resizeme.zf.trigger, with bound this on _bindHandler.onResizeMeBound\n * @private\n */},{key:\"_onResizeMe\",value:function _onResizeMe(){this._reflow();}/**\n * function to handle $elements postequalized.zf.equalizer, with bound this on _bindHandler.onPostEqualizedBound\n * @private\n */},{key:\"_onPostEqualized\",value:function _onPostEqualized(e){if(e.target!==this.$element[0]){this._reflow();}}/**\n * Initializes events for Equalizer.\n * @private\n */},{key:\"_events\",value:function _events(){this._pauseEvents();if(this.hasNested){this.$element.on('postequalized.zf.equalizer',this._bindHandler.onPostEqualizedBound);}else{this.$element.on('resizeme.zf.trigger',this._bindHandler.onResizeMeBound);this.$element.on('mutateme.zf.trigger',this._bindHandler.onResizeMeBound);}this.isOn=true;}/**\n * Checks the current breakpoint to the minimum required size.\n * @private\n */},{key:\"_checkMQ\",value:function _checkMQ(){var tooSmall=!_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__.MediaQuery.is(this.options.equalizeOn);if(tooSmall){if(this.isOn){this._pauseEvents();this.$watched.css('height','auto');}}else{if(!this.isOn){this._events();}}return tooSmall;}/**\n * A noop version for the plugin\n * @private\n */},{key:\"_killswitch\",value:function _killswitch(){return;}/**\n * Calls necessary functions to update Equalizer upon DOM change\n * @private\n */},{key:\"_reflow\",value:function _reflow(){if(!this.options.equalizeOnStack){if(this._isStacked()){this.$watched.css('height','auto');return false;}}if(this.options.equalizeByRow){this.getHeightsByRow(this.applyHeightByRow.bind(this));}else{this.getHeights(this.applyHeight.bind(this));}}/**\n * Manually determines if the first 2 elements are *NOT* stacked.\n * @private\n */},{key:\"_isStacked\",value:function _isStacked(){if(!this.$watched[0]||!this.$watched[1]){return true;}return this.$watched[0].getBoundingClientRect().top!==this.$watched[1].getBoundingClientRect().top;}/**\n * Finds the outer heights of children contained within an Equalizer parent and returns them in an array\n * @param {Function} cb - A non-optional callback to return the heights array to.\n * @returns {Array} heights - An array of heights of children within Equalizer container\n */},{key:\"getHeights\",value:function getHeights(cb){var heights=[];for(var i=0,len=this.$watched.length;i`.\n * - `background`: replace the `background-image` CSS property.\n * - `html`: replace the element content.\n * @option\n * @type {string}\n * @default 'auto'\n */type:'auto'};_Interchange.SPECIAL_QUERIES={'landscape':'screen and (orientation: landscape)','portrait':'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)'};/***/},/***/\"./js/foundation.util.triggers.js\":/*!****************************************!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\****************************************//***/function jsFoundationUtilTriggersJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Triggers:function Triggers(){return(/* binding */_Triggers);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_typeof(obj);}var MutationObserver=function(){var prefixes=['WebKit','Moz','O','Ms',''];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=(0,_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(){return false;}/**\n * Save current finger y-position\n * @param event\n * @private\n */},{key:\"_recordScrollable\",value:function _recordScrollable(event){var elem=this;elem.lastY=event.touches[0].pageY;}/**\n * Prevent further scrolling when it hits the edges\n * @param event\n * @private\n */},{key:\"_preventDefaultAtEdges\",value:function _preventDefaultAtEdges(event){var elem=this;var _this=event.data;var delta=elem.lastY-event.touches[0].pageY;elem.lastY=event.touches[0].pageY;if(!_this._canScroll(delta,elem)){event.preventDefault();}}/**\n * Handle continuous scrolling of scrollbox\n * Don't bubble up to _preventDefaultAtEdges\n * @param event\n * @private\n */},{key:\"_scrollboxTouchMoved\",value:function _scrollboxTouchMoved(event){var elem=this;var _this=event.data;var parent=elem.closest('[data-off-canvas], [data-off-canvas-scrollbox-outer]');var delta=elem.lastY-event.touches[0].pageY;parent.lastY=elem.lastY=event.touches[0].pageY;event.stopPropagation();if(!_this._canScroll(delta,elem)){if(!_this._canScroll(delta,parent)){event.preventDefault();}else{parent.scrollTop+=delta;}}}/**\n * Detect possibility of scrolling\n * @param delta\n * @param elem\n * @returns boolean\n * @private\n */},{key:\"_canScroll\",value:function _canScroll(delta,elem){var up=delta<0;var down=delta>0;var allowUp=elem.scrollTop>0;var allowDown=elem.scrollTop1){this.geoSync();}if(this.options.accessible){// allow wrapper to be focusable to enable arrow navigation\nthis.$wrapper.attr('tabindex',0);}}/**\n * Creates a jQuery collection of bullets, if they are being used.\n * @function\n * @private\n */},{key:\"_loadBullets\",value:function _loadBullets(){this.$bullets=this.$element.find(\".\".concat(this.options.boxOfBullets)).find('button');}/**\n * Sets a `timer` object on the orbit, and starts the counter for the next slide.\n * @function\n */},{key:\"geoSync\",value:function geoSync(){var _this=this;this.timer=new _foundation_util_timer__WEBPACK_IMPORTED_MODULE_3__.Timer(this.$element,{duration:this.options.timerDelay,infinite:false},function(){_this.changeSlide(true);});this.timer.start();}/**\n * Sets wrapper and slide heights for the orbit.\n * @function\n * @private\n */},{key:\"_prepareForOrbit\",value:function _prepareForOrbit(){this._setWrapperHeight();}/**\n * Calulates the height of each slide in the collection, and uses the tallest one for the wrapper height.\n * @function\n * @private\n * @param {Function} cb - a callback function to fire when complete.\n */},{key:\"_setWrapperHeight\",value:function _setWrapperHeight(cb){//rewrite this to `for` loop\nvar max=0,temp,counter=0,_this=this;this.$slides.each(function(){temp=this.getBoundingClientRect().height;jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).attr('data-slide',counter);// hide all slides but the active one\nif(!/mui/g.test(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this)[0].className)&&_this.$slides.filter('.is-active')[0]!==_this.$slides.eq(counter)[0]){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).css({'display':'none'});}max=temp>max?temp:max;counter++;});if(counter===this.$slides.length){this.$wrapper.css({'height':max});//only change the wrapper height property once.\nif(cb){cb(max);}//fire callback with max height dimension.\n}}/**\n * Sets the max-height of each slide.\n * @function\n * @private\n */},{key:\"_setSlideHeight\",value:function _setSlideHeight(height){this.$slides.each(function(){jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).css('max-height',height);});}/**\n * Adds event listeners to basically everything within the element.\n * @function\n * @private\n */},{key:\"_events\",value:function _events(){var _this=this;//***************************************\n//**Now using custom event - thanks to:**\n//** Yohai Ararat of Toronto **\n//***************************************\n//\nthis.$element.off('.resizeme.zf.trigger').on({'resizeme.zf.trigger':this._prepareForOrbit.bind(this)});if(this.$slides.length>1){if(this.options.swipe){this.$slides.off('swipeleft.zf.orbit swiperight.zf.orbit').on('swipeleft.zf.orbit',function(e){e.preventDefault();_this.changeSlide(true);}).on('swiperight.zf.orbit',function(e){e.preventDefault();_this.changeSlide(false);});}//***************************************\nif(this.options.autoPlay){this.$slides.on('click.zf.orbit',function(){_this.$element.data('clickedOn',_this.$element.data('clickedOn')?false:true);_this.timer[_this.$element.data('clickedOn')?'pause':'start']();});if(this.options.pauseOnHover){this.$element.on('mouseenter.zf.orbit',function(){_this.timer.pause();}).on('mouseleave.zf.orbit',function(){if(!_this.$element.data('clickedOn')){_this.timer.start();}});}}if(this.options.navButtons){var $controls=this.$element.find(\".\".concat(this.options.nextClass,\", .\").concat(this.options.prevClass));$controls.attr('tabindex',0)//also need to handle enter/return and spacebar key presses\n.on('click.zf.orbit touchend.zf.orbit',function(e){e.preventDefault();_this.changeSlide(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).hasClass(_this.options.nextClass));});}if(this.options.bullets){this.$bullets.on('click.zf.orbit touchend.zf.orbit',function(){if(/is-active/g.test(this.className)){return false;}//if this is active, kick out of function.\nvar idx=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).data('slide'),ltr=idx>_this.$slides.filter('.is-active').data('slide'),$slide=_this.$slides.eq(idx);_this.changeSlide(ltr,$slide,idx);});}if(this.options.accessible){this.$wrapper.add(this.$bullets).on('keydown.zf.orbit',function(e){// handle keyboard event with keyboard util\n_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard.handleKey(e,'Orbit',{next:function next(){_this.changeSlide(true);},previous:function previous(){_this.changeSlide(false);},handled:function handled(){// if bullet is focused, make sure focus moves\nif(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).is(_this.$bullets)){_this.$bullets.filter('.is-active').focus();}}});});}}}/**\n * Resets Orbit so it can be reinitialized\n */},{key:\"_reset\",value:function _reset(){// Don't do anything if there are no slides (first run)\nif(typeof this.$slides==='undefined'){return;}if(this.$slides.length>1){// Remove old events\nthis.$element.off('.zf.orbit').find('*').off('.zf.orbit');// Restart timer if autoPlay is enabled\nif(this.options.autoPlay){this.timer.restart();}// Reset all sliddes\nthis.$slides.each(function(el){jquery__WEBPACK_IMPORTED_MODULE_0___default()(el).removeClass('is-active is-active is-in').removeAttr('aria-live').hide();});// Show the first slide\nthis.$slides.first().addClass('is-active').show();// Triggers when the slide has finished animating\nthis.$element.trigger('slidechange.zf.orbit',[this.$slides.first()]);// Select first bullet if bullets are present\nif(this.options.bullets){this._updateBullets(0);}}}/**\n * Changes the current slide to a new one.\n * @function\n * @param {Boolean} isLTR - if true the slide moves from right to left, if false the slide moves from left to right.\n * @param {jQuery} chosenSlide - the jQuery element of the slide to show next, if one is selected.\n * @param {Number} idx - the index of the new slide in its collection, if one chosen.\n * @fires Orbit#slidechange\n */},{key:\"changeSlide\",value:function changeSlide(isLTR,chosenSlide,idx){if(!this.$slides){return;}// Don't freak out if we're in the middle of cleanup\nvar $curSlide=this.$slides.filter('.is-active').eq(0);if(/mui/g.test($curSlide[0].className)){return false;}//if the slide is currently animating, kick out of the function\nvar $firstSlide=this.$slides.first(),$lastSlide=this.$slides.last(),dirIn=isLTR?'Right':'Left',dirOut=isLTR?'Left':'Right',_this=this,$newSlide;if(!chosenSlide){//most of the time, this will be auto played or clicked from the navButtons.\n$newSlide=isLTR?//if wrapping enabled, check to see if there is a `next` or `prev` sibling, if not, select the first or last slide to fill in. if wrapping not enabled, attempt to select `next` or `prev`, if there's nothing there, the function will kick out on next step. CRAZY NESTED TERNARIES!!!!!\nthis.options.infiniteWrap?$curSlide.next(\".\".concat(this.options.slideClass)).length?$curSlide.next(\".\".concat(this.options.slideClass)):$firstSlide:$curSlide.next(\".\".concat(this.options.slideClass))//pick next slide if moving left to right\n:this.options.infiniteWrap?$curSlide.prev(\".\".concat(this.options.slideClass)).length?$curSlide.prev(\".\".concat(this.options.slideClass)):$lastSlide:$curSlide.prev(\".\".concat(this.options.slideClass));//pick prev slide if moving right to left\n}else{$newSlide=chosenSlide;}if($newSlide.length){/**\n * Triggers before the next slide starts animating in and only if a next slide has been found.\n * @event Orbit#beforeslidechange\n */this.$element.trigger('beforeslidechange.zf.orbit',[$curSlide,$newSlide]);if(this.options.bullets){idx=idx||this.$slides.index($newSlide);//grab index to update bullets\nthis._updateBullets(idx);}if(this.options.useMUI&&!this.$element.is(':hidden')){_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__.Motion.animateIn($newSlide.addClass('is-active'),this.options[\"animInFrom\".concat(dirIn)],function(){$newSlide.css({'display':'block'}).attr('aria-live','polite');});_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__.Motion.animateOut($curSlide.removeClass('is-active'),this.options[\"animOutTo\".concat(dirOut)],function(){$curSlide.removeAttr('aria-live');if(_this.options.autoPlay&&!_this.timer.isPaused){_this.timer.restart();}//do stuff?\n});}else{$curSlide.removeClass('is-active is-in').removeAttr('aria-live').hide();$newSlide.addClass('is-active is-in').attr('aria-live','polite').show();if(this.options.autoPlay&&!this.timer.isPaused){this.timer.restart();}}/**\n * Triggers when the slide has finished animating in.\n * @event Orbit#slidechange\n */this.$element.trigger('slidechange.zf.orbit',[$newSlide]);}}/**\n * Updates the active state of the bullets, if displayed.\n * Move the descriptor of the current slide `[data-slide-active-label]` to the newly active bullet.\n * If no `[data-slide-active-label]` is set, will move the exceeding `span` element.\n *\n * @function\n * @private\n * @param {Number} idx - the index of the current slide.\n */},{key:\"_updateBullets\",value:function _updateBullets(idx){var $oldBullet=this.$bullets.filter('.is-active');var $othersBullets=this.$bullets.not('.is-active');var $newBullet=this.$bullets.eq(idx);$oldBullet.removeClass('is-active').blur();$newBullet.addClass('is-active');// Find the descriptor for the current slide to move it to the new slide button\nvar activeStateDescriptor=$oldBullet.children('[data-slide-active-label]').last();// If not explicitely given, search for the last \"exceeding\" span element (compared to others bullets).\nif(!activeStateDescriptor.length){var spans=$oldBullet.children('span');var spanCountInOthersBullets=$othersBullets.toArray().map(function(b){return jquery__WEBPACK_IMPORTED_MODULE_0___default()(b).children('span').length;});// If there is an exceeding span element, use it as current slide descriptor\nif(spanCountInOthersBullets.every(function(count){return count1?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().isEmptyObject(this.rules)){this._checkMediaQueries();}// Add data-mutate since children may need it.\nthis.$element.attr('data-mutate',this.$element.attr('data-mutate')||(0,_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().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().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={};/***/},/***/\"./foundation.accordionMenu\":/*!****************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.accordionMenu\"],\"amd\":\"./foundation.accordionMenu\",\"commonjs\":\"./foundation.accordionMenu\",\"commonjs2\":\"./foundation.accordionMenu\"} ***!\n \\****************************************************************************************************************************************************************************************************//***/function foundationAccordionMenu(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_accordionMenu__;/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.drilldown\":/*!************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.drilldown\"],\"amd\":\"./foundation.drilldown\",\"commonjs\":\"./foundation.drilldown\",\"commonjs2\":\"./foundation.drilldown\"} ***!\n \\************************************************************************************************************************************************************************************//***/function foundationDrilldown(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_drilldown__;/***/},/***/\"./foundation.dropdownMenu\":/*!************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.dropdownMenu\"],\"amd\":\"./foundation.dropdownMenu\",\"commonjs\":\"./foundation.dropdownMenu\",\"commonjs2\":\"./foundation.dropdownMenu\"} ***!\n \\************************************************************************************************************************************************************************************************//***/function foundationDropdownMenu(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_dropdownMenu__;/***/},/***/\"./foundation.util.mediaQuery\":/*!************************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.mediaQuery\"],\"amd\":\"./foundation.util.mediaQuery\",\"commonjs\":\"./foundation.util.mediaQuery\",\"commonjs2\":\"./foundation.util.mediaQuery\"} ***!\n \\************************************************************************************************************************************************************************************************************//***/function foundationUtilMediaQuery(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!*********************************************************!*\\\n !*** ./js/entries/plugins/foundation.responsiveMenu.js ***!\n \\*********************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */ResponsiveMenu:function ResponsiveMenu(){return(/* reexport safe */_foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__.ResponsiveMenu);}/* harmony export */});/* 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 import */var _foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.responsiveMenu */\"./js/foundation.responsiveMenu.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_responsiveMenu__WEBPACK_IMPORTED_MODULE_1__.ResponsiveMenu,'ResponsiveMenu');}();/******/return __webpack_exports__;/******/}());});//# 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(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.mediaQuery\",\"./foundation.util.motion\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.util.motion\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveToggle\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.responsiveToggle.js\":/*!*******************************************!*\\\n !*** ./js/foundation.responsiveToggle.js ***!\n \\*******************************************//***/function jsFoundationResponsiveToggleJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */ResponsiveToggle:function ResponsiveToggle(){return(/* binding */_ResponsiveToggle);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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().contains(_this.$element[0],e.target)||!jquery__WEBPACK_IMPORTED_MODULE_0___default().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(){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\"),10);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().contains(_this.$element[0],e.target)||!jquery__WEBPACK_IMPORTED_MODULE_0___default().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\"),10);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\",value:/**\n * Destroys an instance of a modal.\n * @function\n */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 \\****************************************//***/function jsFoundationUtilTriggersJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Triggers:function Triggers(){return(/* binding */_Triggers);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_typeof(obj);}var MutationObserver=function(){var prefixes=['WebKit','Moz','O','Ms',''];for(var i=0;i1?this.inputs.eq(1):jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat(this.$handle2.attr('aria-controls')));if(!this.inputs[1]){this.inputs=this.inputs.add(this.$input2);}// this.$handle.triggerHandler('click.zf.slider');\nthis._setInitAttr(1);}// Set handle positions\nthis.setHandles();this._events();this.initialized=true;}},{key:\"setHandles\",value:function setHandles(){var _this2=this;if(this.handles[1]){this._setHandlePos(this.$handle,this.inputs.eq(0).val(),function(){_this2._setHandlePos(_this2.$handle2,_this2.inputs.eq(1).val());});}else{this._setHandlePos(this.$handle,this.inputs.eq(0).val());}}},{key:\"_reflow\",value:function _reflow(){this.setHandles();}/**\n * @function\n * @private\n * @param {Number} value - floating point (the value) to be transformed using to a relative position on the slider (the inverse of _value)\n */},{key:\"_pctOfBar\",value:function _pctOfBar(value){var pctOfBar=percent(value-this.options.start,this.options.end-this.options.start);switch(this.options.positionValueFunction){case\"pow\":pctOfBar=this._logTransform(pctOfBar);break;case\"log\":pctOfBar=this._powTransform(pctOfBar);break;}return pctOfBar.toFixed(2);}/**\n * @function\n * @private\n * @param {Number} pctOfBar - floating point, the relative position of the slider (typically between 0-1) to be transformed to a value\n */},{key:\"_value\",value:function _value(pctOfBar){switch(this.options.positionValueFunction){case\"pow\":pctOfBar=this._powTransform(pctOfBar);break;case\"log\":pctOfBar=this._logTransform(pctOfBar);break;}var value;if(this.options.vertical){// linear interpolation which is working with negative values for start\n// https://math.stackexchange.com/a/1019084\nvalue=parseFloat(this.options.end)+pctOfBar*(this.options.start-this.options.end);}else{value=(this.options.end-this.options.start)*pctOfBar+parseFloat(this.options.start);}return value;}/**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the log function\n */},{key:\"_logTransform\",value:function _logTransform(value){return baseLog(this.options.nonLinearBase,value*(this.options.nonLinearBase-1)+1);}/**\n * @function\n * @private\n * @param {Number} value - floating point (typically between 0-1) to be transformed using the power function\n */},{key:\"_powTransform\",value:function _powTransform(value){return(Math.pow(this.options.nonLinearBase,value)-1)/(this.options.nonLinearBase-1);}/**\n * Sets the position of the selected handle and fill bar.\n * @function\n * @private\n * @param {jQuery} $hndl - the selected handle to move.\n * @param {Number} location - floating point between the start and end values of the slider bar.\n * @param {Function} cb - callback function to fire on completion.\n * @fires Slider#moved\n * @fires Slider#changed\n */},{key:\"_setHandlePos\",value:function _setHandlePos($hndl,location,cb){// don't move if the slider has been disabled since its initialization\nif(this.$element.hasClass(this.options.disabledClass)){return;}//might need to alter that slightly for bars that will have odd number selections.\nlocation=parseFloat(location);//on input change events, convert string to number...grumble.\n// prevent slider from running out of bounds, if value exceeds the limits set through options, override the value to min/max\nif(locationthis.options.end){location=this.options.end;}var isDbl=this.options.doubleSided;if(isDbl){//this block is to prevent 2 handles from crossing eachother. Could/should be improved.\nif(this.handles.index($hndl)===0){var h2Val=parseFloat(this.$handle2.attr('aria-valuenow'));location=location>=h2Val?h2Val-this.options.step:location;}else{var h1Val=parseFloat(this.$handle.attr('aria-valuenow'));location=location<=h1Val?h1Val+this.options.step:location;}}var _this=this,vert=this.options.vertical,hOrW=vert?'height':'width',lOrT=vert?'top':'left',handleDim=$hndl[0].getBoundingClientRect()[hOrW],elemDim=this.$element[0].getBoundingClientRect()[hOrW],//percentage of bar min/max value based on click or drag point\npctOfBar=this._pctOfBar(location),//number of actual pixels to shift the handle, based on the percentage obtained above\npxToMove=(elemDim-handleDim)*pctOfBar,//percentage of bar to shift the handle\nmovement=(percent(pxToMove,elemDim)*100).toFixed(this.options.decimal);//fixing the decimal value for the location number, is passed to other methods as a fixed floating-point value\nlocation=parseFloat(location.toFixed(this.options.decimal));// declare empty object for css adjustments, only used with 2 handled-sliders\nvar css={};this._setValues($hndl,location);// TODO update to calculate based on values set to respective inputs??\nif(isDbl){var isLeftHndl=this.handles.index($hndl)===0,//empty variable, will be used for min-height/width for fill bar\ndim,//percentage w/h of the handle compared to the slider bar\nhandlePct=Math.floor(percent(handleDim,elemDim)*100);//if left handle, the math is slightly different than if it's the right handle, and the left/top property needs to be changed for the fill bar\nif(isLeftHndl){//left or top percentage value to apply to the fill bar.\ncss[lOrT]=\"\".concat(movement,\"%\");//calculate the new min-height/width for the fill bar.\ndim=parseFloat(this.$handle2[0].style[lOrT])-movement+handlePct;//this callback is necessary to prevent errors and allow the proper placement and initialization of a 2-handled slider\n//plus, it means we don't care if 'dim' isNaN on init, it won't be in the future.\nif(cb&&typeof cb==='function'){cb();}//this is only needed for the initialization of 2 handled sliders\n}else{//just caching the value of the left/bottom handle's left/top property\nvar handlePos=parseFloat(this.$handle[0].style[lOrT]);//calculate the new min-height/width for the fill bar. Use isNaN to prevent false positives for numbers <= 0\n//based on the percentage of movement of the handle being manipulated, less the opposing handle's left/top position, plus the percentage w/h of the handle itself\ndim=movement-(isNaN(handlePos)?(this.options.initialStart-this.options.start)/((this.options.end-this.options.start)/100):handlePos)+handlePct;}// assign the min-height/width to our css object\ncss[\"min-\".concat(hOrW)]=\"\".concat(dim,\"%\");}//because we don't know exactly how the handle will be moved, check the amount of time it should take to move.\nvar moveTime=this.$element.data('dragging')?1000/60:this.options.moveTime;(0,_foundation_util_motion__WEBPACK_IMPORTED_MODULE_2__.Move)(moveTime,$hndl,function(){// adjusting the left/top property of the handle, based on the percentage calculated above\n// if movement isNaN, that is because the slider is hidden and we cannot determine handle width,\n// fall back to next best guess.\nif(isNaN(movement)){$hndl.css(lOrT,\"\".concat(pctOfBar*100,\"%\"));}else{$hndl.css(lOrT,\"\".concat(movement,\"%\"));}if(!_this.options.doubleSided){//if single-handled, a simple method to expand the fill bar\n_this.$fill.css(hOrW,\"\".concat(pctOfBar*100,\"%\"));}else{//otherwise, use the css object we created above\n_this.$fill.css(css);}});if(this.initialized){this.$element.one('finished.zf.animate',function(){/**\n * Fires when the handle is done moving.\n * @event Slider#moved\n */_this.$element.trigger('moved.zf.slider',[$hndl]);});/**\n * Fires when the value has not been change for a given time.\n * @event Slider#changed\n */clearTimeout(_this.timeout);_this.timeout=setTimeout(function(){_this.$element.trigger('changed.zf.slider',[$hndl]);},_this.options.changedDelay);}}/**\n * Sets the initial attribute for the slider element.\n * @function\n * @private\n * @param {Number} idx - index of the current handle/input to use.\n */},{key:\"_setInitAttr\",value:function _setInitAttr(idx){var initVal=idx===0?this.options.initialStart:this.options.initialEnd;var id=this.inputs.eq(idx).attr('id')||(0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.GetYoDigits)(6,'slider');this.inputs.eq(idx).attr({'id':id,'max':this.options.end,'min':this.options.start,'step':this.options.step});this.inputs.eq(idx).val(initVal);this.handles.eq(idx).attr({'role':'slider','aria-controls':id,'aria-valuemax':this.options.end,'aria-valuemin':this.options.start,'aria-valuenow':initVal,'aria-orientation':this.options.vertical?'vertical':'horizontal','tabindex':0});}/**\n * Sets the input and `aria-valuenow` values for the slider element.\n * @function\n * @private\n * @param {jQuery} $handle - the currently selected handle.\n * @param {Number} val - floating point of the new value.\n */},{key:\"_setValues\",value:function _setValues($handle,val){var idx=this.options.doubleSided?this.handles.index($handle):0;this.inputs.eq(idx).val(val);$handle.attr('aria-valuenow',val);}/**\n * Handles events on the slider element.\n * Calculates the new location of the current handle.\n * If there are two handles and the bar was clicked, it determines which handle to move.\n * @function\n * @private\n * @param {Object} e - the `event` object passed from the listener.\n * @param {jQuery} $handle - the current handle to calculate for, if selected.\n * @param {Number} val - floating point number for the new value of the slider.\n * TODO clean this up, there's a lot of repeated code between this and the _setHandlePos fn.\n */},{key:\"_handleEvent\",value:function _handleEvent(e,$handle,val){var value;if(!val){//click or drag events\ne.preventDefault();var _this=this,vertical=this.options.vertical,param=vertical?'height':'width',direction=vertical?'top':'left',eventOffset=vertical?e.pageY:e.pageX,barDim=this.$element[0].getBoundingClientRect()[param],windowScroll=vertical?jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollTop():jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).scrollLeft();var elemOffset=this.$element.offset()[direction];// touch events emulated by the touch util give position relative to screen, add window.scroll to event coordinates...\n// best way to guess this is simulated is if clientY == pageY\nif(e.clientY===e.pageY){eventOffset=eventOffset+windowScroll;}var eventFromBar=eventOffset-elemOffset;var barXY;if(eventFromBar<0){barXY=0;}else if(eventFromBar>barDim){barXY=barDim;}else{barXY=eventFromBar;}var offsetPct=percent(barXY,barDim);value=this._value(offsetPct);// turn everything around for RTL, yay math!\nif((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.rtl)()&&!this.options.vertical){value=this.options.end-value;}value=_this._adjustValue(null,value);if(!$handle){//figure out which handle it is, pass it to the next function.\nvar firstHndlPos=absPosition(this.$handle,direction,barXY,param),secndHndlPos=absPosition(this.$handle2,direction,barXY,param);$handle=firstHndlPos<=secndHndlPos?this.$handle:this.$handle2;}}else{//change event on input\nvalue=this._adjustValue(null,val);}this._setHandlePos($handle,value);}/**\n * Adjustes value for handle in regard to step value. returns adjusted value\n * @function\n * @private\n * @param {jQuery} $handle - the selected handle.\n * @param {Number} value - value to adjust. used if $handle is falsy\n */},{key:\"_adjustValue\",value:function _adjustValue($handle,value){var val,step=this.options.step,div=parseFloat(step/2),left,previousVal,nextVal;if(!!$handle){val=parseFloat($handle.attr('aria-valuenow'));}else{val=value;}if(val>=0){left=val%step;}else{left=step+val%step;}previousVal=val-left;nextVal=previousVal+step;if(left===0){return val;}val=val>=previousVal+div?nextVal:previousVal;return val;}/**\n * Adds event listeners to the slider elements.\n * @function\n * @private\n */},{key:\"_events\",value:function _events(){this._eventsForHandle(this.$handle);if(this.handles[1]){this._eventsForHandle(this.$handle2);}}/**\n * Adds event listeners a particular handle\n * @function\n * @private\n * @param {jQuery} $handle - the current handle to apply listeners to.\n */},{key:\"_eventsForHandle\",value:function _eventsForHandle($handle){var _this=this,curHandle;var handleChangeEvent=function handleChangeEvent(e){var idx=_this.inputs.index(jquery__WEBPACK_IMPORTED_MODULE_0___default()(this));_this._handleEvent(e,_this.handles.eq(idx),jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).val());};// IE only triggers the change event when the input loses focus which strictly follows the HTML specification\n// listen for the enter key and trigger a change\n// @see https://html.spec.whatwg.org/multipage/input.html#common-input-element-events\nthis.inputs.off('keyup.zf.slider').on('keyup.zf.slider',function(e){if(e.keyCode===13)handleChangeEvent.call(this,e);});this.inputs.off('change.zf.slider').on('change.zf.slider',handleChangeEvent);if(this.options.clickSelect){this.$element.off('click.zf.slider').on('click.zf.slider',function(e){if(_this.$element.data('dragging')){return false;}if(!jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target).is('[data-slider-handle]')){if(_this.options.doubleSided){_this._handleEvent(e);}else{_this._handleEvent(e,_this.$handle);}}});}if(this.options.draggable){this.handles.addTouch();var $body=jquery__WEBPACK_IMPORTED_MODULE_0___default()('body');$handle.off('mousedown.zf.slider').on('mousedown.zf.slider',function(e){$handle.addClass('is-dragging');_this.$fill.addClass('is-dragging');//\n_this.$element.data('dragging',true);curHandle=jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.currentTarget);$body.on('mousemove.zf.slider',function(ev){ev.preventDefault();_this._handleEvent(ev,curHandle);}).on('mouseup.zf.slider',function(ev){_this._handleEvent(ev,curHandle);$handle.removeClass('is-dragging');_this.$fill.removeClass('is-dragging');_this.$element.data('dragging',false);$body.off('mousemove.zf.slider mouseup.zf.slider');});})// prevent events triggered by touch\n.on('selectstart.zf.slider touchmove.zf.slider',function(e){e.preventDefault();});}$handle.off('keydown.zf.slider').on('keydown.zf.slider',function(e){var _$handle=jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),idx=_this.options.doubleSided?_this.handles.index(_$handle):0,oldValue=parseFloat($handle.attr('aria-valuenow')),newValue;// handle keyboard event with keyboard util\n_foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard.handleKey(e,'Slider',{decrease:function decrease(){newValue=oldValue-_this.options.step;},increase:function increase(){newValue=oldValue+_this.options.step;},decreaseFast:function decreaseFast(){newValue=oldValue-_this.options.step*10;},increaseFast:function increaseFast(){newValue=oldValue+_this.options.step*10;},min:function min(){newValue=_this.options.start;},max:function max(){newValue=_this.options.end;},handled:function handled(){// only set handle pos when event was handled specially\ne.preventDefault();_this._setHandlePos(_$handle,newValue);}});/*if (newValue) { // if pressed key has special function, update value\n e.preventDefault();\n _this._setHandlePos(_$handle, newValue);\n }*/});}/**\n * Destroys the slider plugin.\n */},{key:\"_destroy\",value:function _destroy(){this.handles.off('.zf.slider');this.inputs.off('.zf.slider');this.$element.off('.zf.slider');clearTimeout(this.timeout);}}]);return Slider;}(_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.Plugin);_Slider.defaults={/**\n * Minimum value for the slider scale.\n * @option\n * @type {number}\n * @default 0\n */start:0,/**\n * Maximum value for the slider scale.\n * @option\n * @type {number}\n * @default 100\n */end:100,/**\n * Minimum value change per change event.\n * @option\n * @type {number}\n * @default 1\n */step:1,/**\n * Value at which the handle/input *(left handle/first input)* should be set to on initialization.\n * @option\n * @type {number}\n * @default 0\n */initialStart:0,/**\n * Value at which the right handle/second input should be set to on initialization.\n * @option\n * @type {number}\n * @default 100\n */initialEnd:100,/**\n * Allows the input to be located outside the container and visible. Set to by the JS\n * @option\n * @type {boolean}\n * @default false\n */binding:false,/**\n * Allows the user to click/tap on the slider bar to select a value.\n * @option\n * @type {boolean}\n * @default true\n */clickSelect:true,/**\n * Set to true and use the `vertical` class to change alignment to vertical.\n * @option\n * @type {boolean}\n * @default false\n */vertical:false,/**\n * Allows the user to drag the slider handle(s) to select a value.\n * @option\n * @type {boolean}\n * @default true\n */draggable:true,/**\n * Disables the slider and prevents event listeners from being applied. Double checked by JS with `disabledClass`.\n * @option\n * @type {boolean}\n * @default false\n */disabled:false,/**\n * Allows the use of two handles. Double checked by the JS. Changes some logic handling.\n * @option\n * @type {boolean}\n * @default false\n */doubleSided:false,/**\n * Potential future feature.\n */// steps: 100,\n/**\n * Number of decimal places the plugin should go to for floating point precision.\n * @option\n * @type {number}\n * @default 2\n */decimal:2,/**\n * Time delay for dragged elements.\n */// dragDelay: 0,\n/**\n * Time, in ms, to animate the movement of a slider handle if user clicks/taps on the bar. Needs to be manually set if updating the transition time in the Sass settings.\n * @option\n * @type {number}\n * @default 200\n */moveTime:200,//update this if changing the transition time in the sass\n/**\n * Class applied to disabled sliders.\n * @option\n * @type {string}\n * @default 'disabled'\n */disabledClass:'disabled',/**\n * Will invert the default layout for a vertical slider.\n * @option\n * @type {boolean}\n * @default false\n */invertVertical:false,/**\n * Milliseconds before the `changed.zf-slider` event is triggered after value change.\n * @option\n * @type {number}\n * @default 500\n */changedDelay:500,/**\n * Basevalue for non-linear sliders\n * @option\n * @type {number}\n * @default 5\n */nonLinearBase:5,/**\n * Basevalue for non-linear sliders, possible values are: `'linear'`, `'pow'` & `'log'`. Pow and Log use the nonLinearBase setting.\n * @option\n * @type {string}\n * @default 'linear'\n */positionValueFunction:'linear'};function percent(frac,num){return frac/num;}function absPosition($handle,dir,clickPos,param){return Math.abs($handle.position()[dir]+$handle[param]()/2-clickPos);}function baseLog(base,value){return Math.log(value)/Math.log(base);}/***/},/***/\"./js/foundation.util.triggers.js\":/*!****************************************!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\****************************************//***/function jsFoundationUtilTriggersJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Triggers:function Triggers(){return(/* binding */_Triggers);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!*******************************************************!*\\\n !*** ./js/entries/plugins/foundation.smoothScroll.js ***!\n \\*******************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */SmoothScroll:function SmoothScroll(){return(/* reexport safe */_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__.SmoothScroll);}/* harmony export */});/* 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 import */var _foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.smoothScroll */\"./js/foundation.smoothScroll.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_smoothScroll__WEBPACK_IMPORTED_MODULE_1__.SmoothScroll,'SmoothScroll');}();/******/return __webpack_exports__;/******/}());});//# 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(\"jquery\"),require(\"./foundation.smoothScroll\"),require(\"./foundation.util.motion\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.smoothScroll\",\"./foundation.util.motion\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.smoothScroll\"),require(\"./foundation.util.motion\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.magellan\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.smoothScroll\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_smoothScroll__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.magellan.js\":/*!***********************************!*\\\n !*** ./js/foundation.magellan.js ***!\n \\***********************************//***/function jsFoundationMagellanJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Magellan:function Magellan(){return(/* binding */_Magellan);}/* harmony export */});/* 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.utils */\"./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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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 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 \\****************************************//***/function jsFoundationUtilTriggersJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Triggers:function Triggers(){return(/* binding */_Triggers);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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.deepLinkSmudgeOffset},_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 $targetAnchor=$target.removeClass(\"\".concat(this.options.linkActiveClass)).find('[role=\"tab\"]').attr({'aria-selected':'false','tabindex':-1});jquery__WEBPACK_IMPORTED_MODULE_0___default()(\"#\".concat($targetAnchor.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\",value:/**\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 */function _setHeight(){var max=0,_this=this;// Lock down the `this` value for the root tabs object\nif(!this.$tabContent){return;}this.$tabContent.find(\".\".concat(this.options.panelClass)).css('min-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('min-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 `deepLinkSmudge` is enabled, animation offset from the top for the deep link adjustment\n * @option\n * @type {number}\n * @default 0\n */deepLinkSmudgeOffset:0,/**\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'};/***/},/***/\"./foundation.core\":/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************//***/function foundationCore(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_core__;/***/},/***/\"./foundation.util.imageLoader\":/*!****************************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.imageLoader\"],\"amd\":\"./foundation.util.imageLoader\",\"commonjs\":\"./foundation.util.imageLoader\",\"commonjs2\":\"./foundation.util.imageLoader\"} ***!\n \\****************************************************************************************************************************************************************************************************************//***/function foundationUtilImageLoader(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_imageLoader__;/***/},/***/\"./foundation.util.keyboard\":/*!****************************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.util.keyboard\"],\"amd\":\"./foundation.util.keyboard\",\"commonjs\":\"./foundation.util.keyboard\",\"commonjs2\":\"./foundation.util.keyboard\"} ***!\n \\****************************************************************************************************************************************************************************************************//***/function foundationUtilKeyboard(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_keyboard__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!***********************************************!*\\\n !*** ./js/entries/plugins/foundation.tabs.js ***!\n \\***********************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */Tabs:function Tabs(){return(/* reexport safe */_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__.Tabs);}/* harmony export */});/* 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 import */var _foundation_tabs__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.tabs */\"./js/foundation.tabs.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_tabs__WEBPACK_IMPORTED_MODULE_1__.Tabs,'Tabs');}();/******/return __webpack_exports__;/******/}());});//# 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.core\"),require(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.accordion\"),require(\"./foundation.tabs\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.mediaQuery\",\"./foundation.accordion\",\"./foundation.tabs\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.mediaQuery\"),require(\"./foundation.accordion\"),require(\"./foundation.tabs\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.responsiveAccordionTabs\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.mediaQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.accordion\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.tabs\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__,__WEBPACK_EXTERNAL_MODULE__foundation_accordion__,__WEBPACK_EXTERNAL_MODULE__foundation_tabs__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.responsiveAccordionTabs.js\":/*!**************************************************!*\\\n !*** ./js/foundation.responsiveAccordionTabs.js ***!\n \\**************************************************//***/function jsFoundationResponsiveAccordionTabsJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */ResponsiveAccordionTabs:function ResponsiveAccordionTabs(){return(/* binding */_ResponsiveAccordionTabs);}/* harmony export */});/* 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.plugin */\"./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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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().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){console.warn(\"Warning: Problems getting Accordion/Tab options: \".concat(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().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().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')||(0,_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(){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(){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(){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={};/***/},/***/\"./foundation.accordion\":/*!************************************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.accordion\"],\"amd\":\"./foundation.accordion\",\"commonjs\":\"./foundation.accordion\",\"commonjs2\":\"./foundation.accordion\"} ***!\n \\************************************************************************************************************************************************************************************//***/function foundationAccordion(module){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 \\****************************************************************************************************************************************************************//***/function foundationCore(module){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 \\****************************************************************************************************************************************************************//***/function foundationTabs(module){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 \\************************************************************************************************************************************************************************************************************//***/function foundationUtilMediaQuery(module){module.exports=__WEBPACK_EXTERNAL_MODULE__foundation_util_mediaQuery__;/***/},/***/\"jquery\":/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************//***/function jquery(module){module.exports=__WEBPACK_EXTERNAL_MODULE_jquery__;/***/}/******/};/************************************************************************//******/// The module cache\n/******/var __webpack_module_cache__={};/******//******/// The require function\n/******/function __webpack_require__(moduleId){/******/// Check if module is in cache\n/******/var cachedModule=__webpack_module_cache__[moduleId];/******/if(cachedModule!==undefined){/******/return cachedModule.exports;/******/}/******/// Create a new module (and put it into the cache)\n/******/var module=__webpack_module_cache__[moduleId]={/******/// no module.id needed\n/******/// no module.loaded needed\n/******/exports:{}/******/};/******//******/// Execute the module function\n/******/__webpack_modules__[moduleId](module,module.exports,__webpack_require__);/******//******/// Return the exports of the module\n/******/return module.exports;/******/}/******//************************************************************************//******//* webpack/runtime/compat get default export *//******/!function(){/******/// getDefaultExport function for compatibility with non-harmony modules\n/******/__webpack_require__.n=function(module){/******/var getter=module&&module.__esModule?/******/function(){return module['default'];}:/******/function(){return module;};/******/__webpack_require__.d(getter,{a:getter});/******/return getter;/******/};/******/}();/******//******//* webpack/runtime/define property getters *//******/!function(){/******/// define getter functions for harmony exports\n/******/__webpack_require__.d=function(exports,definition){/******/for(var key in definition){/******/if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){/******/Object.defineProperty(exports,key,{enumerable:true,get:definition[key]});/******/}/******/}/******/};/******/}();/******//******//* webpack/runtime/hasOwnProperty shorthand *//******/!function(){/******/__webpack_require__.o=function(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop);};/******/}();/******//******//* webpack/runtime/make namespace object *//******/!function(){/******/// 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});/******/};/******/}();/******//************************************************************************/var __webpack_exports__={};// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function(){/*!******************************************************************!*\\\n !*** ./js/entries/plugins/foundation.responsiveAccordionTabs.js ***!\n \\******************************************************************/__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Foundation:function Foundation(){return(/* reexport safe */_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation);},/* harmony export */ResponsiveAccordionTabs:function ResponsiveAccordionTabs(){return(/* reexport safe */_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__.ResponsiveAccordionTabs);}/* harmony export */});/* 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 import */var _foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ../../foundation.responsiveAccordionTabs */\"./js/foundation.responsiveAccordionTabs.js\");_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.plugin(_foundation_responsiveAccordionTabs__WEBPACK_IMPORTED_MODULE_1__.ResponsiveAccordionTabs,'ResponsiveAccordionTabs');}();/******/return __webpack_exports__;/******/}());});//# sourceMappingURL=foundation.responsiveAccordionTabs.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(\"jquery\"),require(\"./foundation.util.motion\"));else if(typeof define==='function'&&define.amd)define([\"./foundation.core\",\"jquery\",\"./foundation.util.motion\"],factory);else if((typeof exports==='undefined'?'undefined':_typeof2(exports))==='object')exports[\"__FOUNDATION_EXTERNAL__\"]=factory(require(\"./foundation.core\"),require(\"jquery\"),require(\"./foundation.util.motion\"));else root[\"__FOUNDATION_EXTERNAL__\"]=root[\"__FOUNDATION_EXTERNAL__\"]||{},root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.toggler\"]=factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"],root[\"jQuery\"],root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.motion\"]);})(self,function(__WEBPACK_EXTERNAL_MODULE__foundation_core__,__WEBPACK_EXTERNAL_MODULE_jquery__,__WEBPACK_EXTERNAL_MODULE__foundation_util_motion__){return(/******/function(){// webpackBootstrap\n/******/\"use strict\";/******/var __webpack_modules__={/***/\"./js/foundation.toggler.js\":/*!**********************************!*\\\n !*** ./js/foundation.toggler.js ***!\n \\**********************************//***/function jsFoundationTogglerJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Toggler:function Toggler(){return(/* binding */_Toggler);}/* harmony export */});/* 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_motion__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(/*! ./foundation.util.motion */\"./foundation.util.motion\");/* harmony import */var _foundation_util_motion__WEBPACK_IMPORTED_MODULE_1___default=/*#__PURE__*/__webpack_require__.n(_foundation_util_motion__WEBPACK_IMPORTED_MODULE_1__);/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(/*! ./foundation.core.utils */\"./foundation.core\");/* harmony import */var _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2___default=/*#__PURE__*/__webpack_require__.n(_foundation_core_plugin__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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_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(templateClasses).attr({'role':'tooltip','aria-hidden':true,'data-is-active':false,'data-is-focus':false,'id':id});return $template;}/**\n * sets the position class of an element and recursively calls itself until there are no more possible positions to attempt, or the tooltip element is no longer colliding.\n * if the tooltip is larger than the screen width, default to full width - any user selected margin\n * @private\n */},{key:\"_setPosition\",value:function _setPosition(){_get(_getPrototypeOf(Tooltip.prototype),\"_setPosition\",this).call(this,this.$element,this.template);}/**\n * reveals the tooltip, and fires an event to close any other open tooltips on the page\n * @fires Tooltip#closeme\n * @fires Tooltip#show\n * @function\n */},{key:\"show\",value:function show(){if(this.options.showOn!=='all'&&!_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__.MediaQuery.is(this.options.showOn)){// console.error('The screen is too small to display this tooltip');\nreturn false;}var _this=this;this.template.css('visibility','hidden').show();this._setPosition();this.template.removeClass('top bottom left right').addClass(this.position);this.template.removeClass('align-top align-bottom align-left align-right align-center').addClass('align-'+this.alignment);/**\n * Fires to close all other open tooltips on the page\n * @event Closeme#tooltip\n */this.$element.trigger('closeme.zf.tooltip',this.template.attr('id'));this.template.attr({'data-is-active':true,'aria-hidden':false});_this.isActive=true;this.template.stop().hide().css('visibility','').fadeIn(this.options.fadeInDuration,function(){//maybe do stuff?\n});/**\n * Fires when the tooltip is shown\n * @event Tooltip#show\n */this.$element.trigger('show.zf.tooltip');}/**\n * Hides the current tooltip, and resets the positioning class if it was changed due to collision\n * @fires Tooltip#hide\n * @function\n */},{key:\"hide\",value:function hide(){var _this=this;this.template.stop().attr({'aria-hidden':true,'data-is-active':false}).fadeOut(this.options.fadeOutDuration,function(){_this.isActive=false;_this.isClick=false;});/**\n * fires when the tooltip is hidden\n * @event Tooltip#hide\n */this.$element.trigger('hide.zf.tooltip');}/**\n * adds event listeners for the tooltip and its anchor\n * TODO combine some of the listeners like focus and mouseenter, etc.\n * @private\n */},{key:\"_events\",value:function _events(){var _this=this;var hasTouch='ontouchstart'in window||typeof window.ontouchstart!=='undefined';var isFocus=false;// `disableForTouch: Fully disable the tooltip on touch devices\nif(hasTouch&&this.options.disableForTouch)return;if(!this.options.disableHover){this.$element.on('mouseenter.zf.tooltip',function(){if(!_this.isActive){_this.timeout=setTimeout(function(){_this.show();},_this.options.hoverDelay);}}).on('mouseleave.zf.tooltip',(0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__.ignoreMousedisappear)(function(){clearTimeout(_this.timeout);if(!isFocus||_this.isClick&&!_this.options.clickOpen){_this.hide();}}));}if(hasTouch){this.$element.on('tap.zf.tooltip touchend.zf.tooltip',function(){_this.isActive?_this.hide():_this.show();});}if(this.options.clickOpen){this.$element.on('mousedown.zf.tooltip',function(){if(_this.isClick){//_this.hide();\n// _this.isClick = false;\n}else{_this.isClick=true;if((_this.options.disableHover||!_this.$element.attr('tabindex'))&&!_this.isActive){_this.show();}}});}else{this.$element.on('mousedown.zf.tooltip',function(){_this.isClick=true;});}this.$element.on({// 'toggle.zf.trigger': this.toggle.bind(this),\n// 'close.zf.trigger': this.hide.bind(this)\n'close.zf.trigger':this.hide.bind(this)});this.$element.on('focus.zf.tooltip',function(){isFocus=true;if(_this.isClick){// If we're not showing open on clicks, we need to pretend a click-launched focus isn't\n// a real focus, otherwise on hover and come back we get bad behavior\nif(!_this.options.clickOpen){isFocus=false;}return false;}else{_this.show();}}).on('focusout.zf.tooltip',function(){isFocus=false;_this.isClick=false;_this.hide();}).on('resizeme.zf.trigger',function(){if(_this.isActive){_this._setPosition();}});}/**\n * adds a toggle method, in addition to the static show() & hide() functions\n * @function\n */},{key:\"toggle\",value:function toggle(){if(this.isActive){this.hide();}else{this.show();}}/**\n * Destroys an instance of tooltip, removes template element from the view.\n * @function\n */},{key:\"_destroy\",value:function _destroy(){this.$element.attr('title',this.template.text()).off('.zf.trigger .zf.tooltip').removeClass(this.options.triggerClass).removeClass('top right left bottom').removeAttr('aria-describedby data-disable-hover data-resize data-toggle data-tooltip data-yeti-box');this.template.remove();}}]);return Tooltip;}(_foundation_positionable__WEBPACK_IMPORTED_MODULE_4__.Positionable);_Tooltip.defaults={/**\n * Time, in ms, before a tooltip should open on hover.\n * @option\n * @type {number}\n * @default 200\n */hoverDelay:200,/**\n * Time, in ms, a tooltip should take to fade into view.\n * @option\n * @type {number}\n * @default 150\n */fadeInDuration:150,/**\n * Time, in ms, a tooltip should take to fade out of view.\n * @option\n * @type {number}\n * @default 150\n */fadeOutDuration:150,/**\n * Disables hover events from opening the tooltip if set to true\n * @option\n * @type {boolean}\n * @default false\n */disableHover:false,/**\n * Disable the tooltip for touch devices.\n * This can be useful to make elements with a tooltip on it trigger their\n * action on the first tap instead of displaying the tooltip.\n * @option\n * @type {booelan}\n * @default false\n */disableForTouch:false,/**\n * Optional addtional classes to apply to the tooltip template on init.\n * @option\n * @type {string}\n * @default ''\n */templateClasses:'',/**\n * Non-optional class added to tooltip templates. Foundation default is 'tooltip'.\n * @option\n * @type {string}\n * @default 'tooltip'\n */tooltipClass:'tooltip',/**\n * Class applied to the tooltip anchor element.\n * @option\n * @type {string}\n * @default 'has-tip'\n */triggerClass:'has-tip',/**\n * Minimum breakpoint size at which to open the tooltip.\n * @option\n * @type {string}\n * @default 'small'\n */showOn:'small',/**\n * Custom template to be used to generate markup for tooltip.\n * @option\n * @type {string}\n * @default ''\n */template:'',/**\n * Text displayed in the tooltip template on open.\n * @option\n * @type {string}\n * @default ''\n */tipText:'',touchCloseText:'Tap to close.',/**\n * Allows the tooltip to remain open if triggered with a click or touch event.\n * @option\n * @type {boolean}\n * @default true\n */clickOpen:true,/**\n * Position of tooltip. Can be left, right, bottom, top, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */position:'auto',/**\n * Alignment of tooltip relative to anchor. Can be left, right, bottom, top, center, or auto.\n * @option\n * @type {string}\n * @default 'auto'\n */alignment:'auto',/**\n * Allow overlap of container/window. If false, tooltip will first try to\n * position as defined by data-position and data-alignment, but reposition if\n * it would cause an overflow. @option\n * @type {boolean}\n * @default false\n */allowOverlap:false,/**\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 * Less common for tooltips.\n * @option\n * @type {boolean}\n * @default false\n */allowBottomOverlap:false,/**\n * Distance, in pixels, the template should push away from the anchor on the Y axis.\n * @option\n * @type {number}\n * @default 0\n */vOffset:0,/**\n * Distance, in pixels, the template should push away from the anchor on the X axis\n * @option\n * @type {number}\n * @default 0\n */hOffset:0,/**\n * Distance, in pixels, the template spacing auto-adjust for a vertical tooltip\n * @option\n * @type {number}\n * @default 14\n */tooltipHeight:14,/**\n * Distance, in pixels, the template spacing auto-adjust for a horizontal tooltip\n * @option\n * @type {number}\n * @default 12\n */tooltipWidth:12,/**\n * Allow HTML in tooltip. Warning: If you are loading user-generated content into tooltips,\n * allowing HTML may open yourself up to XSS attacks.\n * @option\n * @type {boolean}\n * @default false\n */allowHtml:false};/**\n * TODO utilize resize event trigger\n *//***/},/***/\"./js/foundation.util.triggers.js\":/*!****************************************!*\\\n !*** ./js/foundation.util.triggers.js ***!\n \\****************************************//***/function jsFoundationUtilTriggersJs(__unused_webpack_module,__webpack_exports__,__webpack_require__){__webpack_require__.r(__webpack_exports__);/* harmony export */__webpack_require__.d(__webpack_exports__,{/* harmony export */Triggers:function Triggers(){return(/* binding */_Triggers);}/* harmony export */});/* 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){\"@babel/helpers - typeof\";return _typeof=\"function\"==typeof Symbol&&\"symbol\"==_typeof2(Symbol.iterator)?function(obj){return typeof obj==='undefined'?'undefined':_typeof2(obj);}:function(obj){return obj&&\"function\"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?\"symbol\":typeof obj==='undefined'?'undefined':_typeof2(obj);},_typeof(obj);}var MutationObserver=function(){var prefixes=['WebKit','Moz','O','Ms',''];for(var i=0;i');var h1Text=$('.is-style-cards .wp-block-group__inner-container > h1').html();$('.is-style-cards .wp-block-columns > .wp-block-column > .wp-block-image:first-child').each(function(){var img=$(this).html();$(this).html('
      '+img+\"
      \");});$('.is-style-cards .wp-block-group__inner-container > h1').html('
      '+h1Text+'
      ').append('
      ');$('.is-style-cards .wp-block-columns > .wp-block-column > .wp-block-image:first-child').append('
      ');$('.is-style-cards .wp-block-columns > .wp-block-column:first-child > .wp-block-image:first-child').append('
      ');}if($('.wp-block-media-text:not(is-style-featured)')){$('.wp-block-media-text:not(.is-style-featured):not(.is-style-text-focus)').each(function(index,element){var img=$(element).find('.wp-block-media-text__media').html();$(element).find('.wp-block-media-text__media').html('
      '+img+'
      ');$(element).find('.wp-block-media-text__media').append('
      ');$(element).find('.wp-block-media-text__content').append('
      ');if($(element).parent('.wp-block-group__inner')){var group=$(element).closest('.wp-block-group');if($(group).next()){$(group).next().addClass('offset-stars-padding');}}});$('.wp-block-media-text.is-style-text-focus').each(function(index,element){var img=$(element).find('.wp-block-media-text__media').html();$(element).find('.wp-block-media-text__media').html('
      '+img+'
      ');$(element).find('.wp-block-media-text__media').append('
      ');$(element).find('.wp-block-media-text__content').append('
      '+img+'
      ');if($(element).parent('.wp-block-group__inner')){var group=$(element).closest('.wp-block-group');if($(group).next()){$(group).next().addClass('offset-text-focus-padding');}}});}if($('.wp-block-media-text.is-style-featured')){$('.wp-block-media-text.is-style-featured').each(function(index,element){$(element).find('.wp-block-media-text__media').append('
      ');});}var controller=new ScrollMagic.Controller();// build scene\nnew ScrollMagic.Scene({triggerElement:\".wp-block-cover:first-child\",triggerHook:0,// show, when scrolled 10% into view\nduration:\"100%\",// hide 10% before exiting view (80% + 10% from bottom)\noffset:-300// trigger on load\n}).setClassToggle(\".wp-block-cover:first-child\",\"visible\")// add class to reveal\n.addTo(controller);if($('body.single-brew').length>0){var tl=new gsap.timeline();tl.to($('.cover-ingredients-wrap .left-ingredient'),{duration:200,transformOrigin:\"50%, 50%\",y:\"-10%\",ease:\"slow(0.7, 0.7, false)\"});tl.to($('.cover-ingredients-wrap .right-ingredient'),{duration:200,transformOrigin:\"50%, 50%\",y:\"-10%\",ease:\"slow(0.7, 0.7, false)\"},\"-=200\");new ScrollMagic.Scene({duration:\"150%\"}).setTween(tl).addTo(controller);}$('.entry-content').children().each(function(index,element){var id=$(element).attr('id');if(!id){var date=Date.now();var rand=Math.floor(Math.random()*100);var id=date.toString()+rand.toString();$(element).attr('id','block-'+id);}if($(element).hasClass('wp-block-cover')){// add a scene for a cover\nif($(element).is(':first-child')){// skip\n}else{// do stuff\nnew ScrollMagic.Scene({triggerElement:\".wp-block-cover:first-child\",triggerHook:0,// show, when scrolled 10% into view\nduration:\"10%\",// hide 10% before exiting view (80% + 10% from bottom)\noffset:50// move trigger to center of element\n}).setClassToggle(\".wp-block-cover:first-child\",\"visible\")// add class to reveal\n.addTo(controller);}}else{// our passion animations\nif($(element).find('.wp-block-media-text')){$(element).find('.wp-block-media-text').each(function(index,textMedia){var textNodes=$(textMedia).find('.wp-block-media-text__content').children();$(textNodes).each(function(index,textNode){var textId=$(textNode).attr('id');if(!textId){var date=Date.now();var rand=Math.floor(Math.random()*100);var textId=date.toString()+rand.toString();$(textNode).attr('id','element-'+textId);}new ScrollMagic.Scene({triggerElement:\"#element-\"+textId,triggerHook:0,// show, when scrolled 10% into view\nduration:\"200%\",// hide 10% before exiting view (80% + 10% from bottom),\noffset:-500}).setClassToggle(\"#element-\"+textId,\"visible\")// add class to reveal\n.addTo(controller);});if($(textMedia).hasClass('is-style-featured')){var tl=new gsap.timeline();tl.from($(element).find('.ornament-front-b'),{duration:200,transformOrigin:\"50%, 50%\",y:\"100%\",ease:\"slow(0.7, 0.7, false)\"});tl.from($(element).find('.ornament-back-b'),{duration:200,transformOrigin:\"50%, 50%\",y:\"100%\",ease:\"slow(0.7, 0.7, false)\"},\"-=200\");tl.from($(element).find('.ornament-front-a'),{duration:200,transformOrigin:\"50%, 50%\",y:\"100%\",ease:\"slow(0.7, 0.7, false)\"},\"-=200\");tl.from($(element).find('.ornament-back-a'),{duration:200,transformOrigin:\"50%, 50%\",y:\"100%\",ease:\"slow(0.7, 0.7, false)\"},\"-=200\");new ScrollMagic.Scene(_defineProperty({duration:500},'duration',\"200%\")).setTween(tl).addTo(controller);}});}if($(element).find('.wp-block-media-text.is-style-featured').length>0){// do nothing\n}else{if($(element).find('.wp-block-media-text')){var tl=new gsap.timeline();var id=$(element).attr('id');$('#'+id+' .ornament-front-a').each(function(index,ornament){if(index===0){tl.from($(this),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"});tl.from($(this).siblings('.ornament-back-a'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");tl.from($(this).siblings('.hand-ornament'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");}else{tl.from($(this),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");tl.from($(this).siblings('.ornament-back-a'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");tl.from($(this).siblings('.hand-ornament'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");}});$('#'+id+' .ornament-front-b').each(function(index,ornament){if(index===0){tl.from($(this),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"});tl.from($(this).siblings('.ornament-back-b'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");}else{tl.from($(this),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");tl.from($(this).siblings('.ornament-back-b'),{duration:500,transformOrigin:\"50%, 50%\",y:\"75%\",ease:\"slow(0.7, 0.7, false)\"},\"-=500\");}});new ScrollMagic.Scene(_defineProperty({triggerElement:'#'+id,duration:500},'duration',\"100%\")).setTween(tl).addTo(controller);}}// card float animations\nif($(element).hasClass('is-style-cards')){var _ref3;var tl=new gsap.timeline();new ScrollMagic.Scene({triggerElement:\"#\"+$(element).attr('id'),triggerHook:0,// show, when scrolled 10% into view\nduration:\"100%\",// hide 10% before exiting view (80% + 10% from bottom)\noffset:-500// move trigger to center of element\n}).setClassToggle(\"#\"+$(element).attr('id')+\" h1 > .text\",\"visible\")// add class to reveal\n.addTo(controller);new ScrollMagic.Scene({triggerElement:\"#\"+$(element).attr('id'),triggerHook:0,// show, when scrolled 10% into view\nduration:\"100%\",// hide 10% before exiting view (80% + 10% from bottom)\noffset:-500// move trigger to center of element\n}).setClassToggle(\"#\"+$(element).attr('id')+\" .wp-block-group__inner-container > p\",\"visible\")// add class to reveal\n.addTo(controller);tl.from($(element).find('h1 > .ornament'),{duration:1000,transformOrigin:\"50%, 50%\",y:\"150%\",ease:\"slow(0.7, 0.7, false)\"});tl.from($(element).find('.wp-block-column:first-child').find('.ornament'),{duration:1000,transformOrigin:\"50%, 50%\",y:\"150%\",ease:\"slow(0.7, 0.7, false)\"},\"-=1000\");tl.from($(element).find('.wp-block-column:first-child').find('.ornament-secondary'),{duration:1000,transformOrigin:\"50%, 50%\",y:\"150%\",ease:\"slow(0.7, 0.7, false)\"},\"-=1000\");tl.from($(element).find('.wp-block-column:nth-child(2)').find('.ornament'),{duration:1000,transformOrigin:\"50%, 50%\",y:\"150%\",ease:\"slow(0.7, 0.7, false)\"},\"-=1000\");tl.from($(element).find('.wp-block-column:nth-child(3)').find('.ornament'),{duration:1000,transformOrigin:\"50%, 50%\",y:\"50%\",ease:\"slow(0.7, 0.7, false)\"},\"-=1000\");tl.from($(element).find('.wp-block-column'),{duration:500,transformOrigin:\"50%, 50%\",y:\"30%\",ease:\"slow(0.7, 0.7, false)\"},\"-=1000\");new ScrollMagic.Scene((_ref3={duration:500},_defineProperty(_ref3,'duration',\"200%\"),_defineProperty(_ref3,'offset',250),_ref3)).setTween(tl).addTo(controller);}// end card float animations\n// vertical brew slider\nif($(element).hasClass('vertical-brew-slider-block')){new ScrollMagic.Scene({triggerElement:'.vertical-brew-slider-block'}).setClassToggle('.to-top-btn','show').addTo(controller);new ScrollMagic.Scene({triggerElement:'.vertical-brew-slider-block',offset:$(window).height()/2}).setClassToggle(\".vertical-brew-slider-nav\",\"fixed\").addTo(controller).on(\"update\",function(event){var pos=$(window).scrollTop();var top=$('.vertical-brew-slider-block').offset();var top=top.top;var bottom=top+$('.vertical-brew-slider-block').outerHeight()-$(window).innerHeight();if(pos>bottom){$('.vertical-brew-slider-nav').removeClass('fixed').addClass('stuck-bottom');}else if(pos0){$(packField).closest('.variation').css('width','100%');}});function initQuantityIncrement(){$('.plus-minus-input input').change(function(){if($('.update-cart').length&&!$(this).hasClass('processing-update')){$('.update-cart').trigger('click');}});// This button will increment the value\n$('[data-quantity=\"plus\"]').click(function(e){// Stop acting like a button\ne.preventDefault();// Get the field name\nfieldName=$(this).attr('data-field');// Get its current value\nvar currentVal=parseInt($('#'+fieldName).val());// If is not undefined\nif(!isNaN(currentVal)){// Increment\n$('#'+fieldName).val(currentVal+1).trigger('change');if($('.update-cart').length){$(this).closest('input').addClass('processing-update');$('.update-cart').trigger('click');}}else{// Otherwise put a 0 there\n$('#'+fieldName).val(0).trigger('change');if($('.update-cart').length){$('.update-cart').trigger('click');}}});// This button will decrement the value till 0\n$('[data-quantity=\"minus\"]').click(function(e){// Stop acting like a button\ne.preventDefault();// Get the field name\nfieldName=$(this).attr('data-field');// Get its current value\nvar currentVal=parseInt($('#'+fieldName).val());// If it isn't undefined or its greater than 0\nif(!isNaN(currentVal)&¤tVal>0){// Decrement one\n$('#'+fieldName).val(currentVal-1).trigger('change');if($('.update-cart').length){$('.update-cart').trigger('click');}}else{// Otherwise put a 0 there\n$('#'+fieldName).val(0).trigger('change');if($('.update-cart').length){$('.update-cart').trigger('click');}}});}$(document).ajaxComplete(function(){if($('body').hasClass('woocommerce-checkout')||$('body').hasClass('woocommerce-cart')){$('html, body').stop();}});$('.shop_table .wcsatt-options').remove();(function($){/**\n * Change Price Variation to correct position\n */$(\".woocommerce-variation\").insertAfter(\".variations\");$('.variations_form').on('woocommerce_variation_has_changed',function(){$(\".woocommerce-variation\").insertAfter(\".variationsp\");});})(jQuery);});\n\"use strict\";jQuery(document).foundation();\n'use strict';jQuery(document).ready(function($){if($('body').hasClass('woocommerce-account')){var error=$('.woocommerce-error');var loginForm=$('.woocommerce-form-login');if(error&&loginForm.length>0){loginForm.addClass('has-errors');error.find('li').each(function(index,element){var message=$(element).text();if(message.toLowerCase().indexOf(\"password\")>=0){$('.pass-col').addClass('error');$('.pass-col .input-wrap').append('close').append('
      Password is incorrect
      ');}if(message.toLowerCase().indexOf(\"username\")>=0){$('.user-col').addClass('error');$('.user-col .input-wrap').append('close').append('
      E-mail is incorrect
      ');}else{$('.user-col .input-wrap').append('check');}});}}});\n'use strict';jQuery(document).ready(function($){window.currentQuestion=$('#quiz-form .fieldset-wrap:first-child');$(window).resize(function(){if(this.resizeTO)clearTimeout(this.resizeTO);this.resizeTO=setTimeout(function(){$(this).trigger('resizeEnd');},500);});var $selectedAnswers=[];$('#quiz-form input[type=\"radio\"]').change(function(){$(this).closest('fieldset').addClass('option-selected');$('.option-selected').next().addClass(\"show-nav\");$selectedAnswers=[];$('#quiz-form input[type=\"radio\"]:checked').each(function(){console.log($selectedAnswers.push($(this)));});var nextField=$(window.currentQuestion).next('.fieldset-wrap');window.currentQuestion=nextField;if(window.currentQuestion[0]===undefined){if($(window).width()>768){$('#calcQuiz').click();}}else{var nextPos=$(window.currentQuestion).position().top;var topMargin=(608-$(window.currentQuestion).height())/2;if($(window).width()>768){//$(\".quiz-form-body\").animate({ scrollTop: $('.quiz-form-body').scrollTop() + nextPos - topMargin }, 1000);\n}else{// do nothing\n}}});$('#quiz-form').bind('formreset.zf.abide',function(e){window.currentQuestion=$('#quiz-form .fieldset-wrap:first-child');$('.quiz-results *[data-result-product-id]').each(function(){$(this).addClass('hide');});$('.quiz-data').html('');$('.quiz-stats').empty();$('fieldset').removeClass('option-selected');//$(\"html, body, .quiz-form-body\").animate({ scrollTop: 0 }, 1000);\n/*if ($(window).width() > 768) {\n $('.quiz-results').removeClass('show').css('z-index', '1');\n $('#quiz-form').fadeIn(500);\n }*/});// Reset quiz on pageload still not clearing quiz values\n$(document).ready(function(){$(\"input:radio[name='answer-0']\").each(function(i){this.checked=false;});$('fieldset').removeClass('option-selected');});$('#quiz-form').submit(function(e){e.preventDefault();});$('#quiz-form').bind(\"formvalid.zf.abide\",function(e,target){var $selectedProducts=[];// Get Product Tally\n$('#quiz-form input[type=\"radio\"]:checked').each(function(){var recProds=$(this).attr('data-products').split(' ');for(var i=0;itopProdQty){topProdID=rec_prod;topProdQty=$selectedProducts[rec_prod];console.log('topProdID = '+topProdID);}}var textAnswers=[];$($selectedAnswers).each(function(index,element){var questionID=$(element[0]).attr('data-question');var question=$('#question-'+questionID).html();var answer=$(element[0]).siblings('.answer').html();textAnswers.push({question:question,answer:answer});});var quizAnswers=textAnswers;var resultName=$('.quiz-results *[data-result-product-id=\"'+topProdID+'\"]').attr('data-result-product-name');/*$.ajax({\n type: \"POST\",\n url: \"/wp-admin/admin-ajax.php\",\n datatype: \"html\",\n data: {'action': 'quiz_sending_mail', 'quizAnswers': quizAnswers, 'quizResult': resultName},\n success: function(response) {\n },error:function(response){\n console.log(\"error: \" + response);\n }\n });*/$('.quiz-results *[data-result-product-id=\"'+topProdID+'\"]').removeClass('hide');//if ($(window).width() > 768) {\n$('#quiz-form').fadeOut(500);$('.quiz-results').css('z-index','3').addClass('show');//$('.brew-cover').addClass('slide-in-top');\nvar controller=new ScrollMagic.Controller();if($('.quiz-results').length>0){var tl=new gsap.timeline();tl.to($('.cover-ingredients-wrap .left-ingredient'),{duration:200,transformOrigin:\"50%, 50%\",y:\"-200px\",ease:\"slow(0.7, 0.7, false)\"});tl.to($('.cover-ingredients-wrap .right-ingredient'),{duration:200,transformOrigin:\"50%, 50%\",y:\"-200px\",ease:\"slow(0.7, 0.7, false)\"},\"-=200\");new ScrollMagic.Scene({duration:\"250%\"}).setTween(tl).addTo(controller);}// }\n/* else {\n var offset = $('.quiz-results').offset();\n var pos = offset.top;\n $(\"html, body\").animate({ scrollTop: pos - 170 }, 500);\n } */});/* $('.retake-quiz').click(function() {\n $('#calcQuizReset').click();\n }); *//*window.fbAsyncInit = function() {\n FB.init({\n //appId : '2656955637963501',\n autoLogAppEvents : true,\n xfbml : true,\n version : 'v6.0'\n });\n \n $('.quiz-fb-btn').click(function() {\n var id = $(this).attr('data-product-id');\n FB.ui({\n method: 'share',\n href: window.location.protocol + '//' + window.location.host + window.location.pathname + '?quizreferral=' + id,\n }, function(response){});\n });\n }; */$('.quiz-slider').slick({slidesToShow:1,slidesToScroll:1,infinite:false,mobileFirst:true,arrows:false});$('button.next').click(function(){$(\".quiz-slider\").slick('slickNext');});$('button.prev').click(function(){$(\".quiz-slider\").slick('slickPrev');});$(this).on('afterChange',function(event,slick,currentSlide){if(slick.$slides.length==currentSlide+slick.options.slidesToScroll){//alert ('text should change');\n$('.quiz-slider .next').text('SUBMIT');}else{$('.quiz-slider .next').text('NEXT');}});});\n'use strict';/*\nThese functions make sure WordPress\nand Foundation play nice together.\n*/jQuery(document).ready(function($){// Remove empty P tags created by WP inside of Accordion and Orbit\n$('.accordion p:empty, .orbit p:empty').remove();// Adds Flex Video to YouTube and Vimeo Embeds\n$('iframe[src*=\"youtube.com\"], iframe[src*=\"vimeo.com\"]').each(function(){if($(this).innerWidth()/$(this).innerHeight()>1.5){$(this).wrap(\"
      \");}else{$(this).wrap(\"
      \");}});$('.variation select').select2({minimumResultsForSearch:-1});// Mobile Menu\n$('.menu-icon, .mobile-brew-toggle-trigger').click(function(){if(!$(this).hasClass('brew-toggle-icon')){$(this).toggleClass('open');}$('body').toggleClass('mobile-nav-open');});$('.related-products-grid').slick({dots:false,infinite:true,speed:300,slidesToShow:1,slidesToScroll:1,mobileFirst:true,arrows:true,nextArrow:'',prevArrow:'',responsive:[{breakpoint:768,settings:{slidesToShow:2,slidesToScroll:2}},{breakpoint:1024,settings:\"unslick\"}]});$('.horizontal-brew-slider').slick({slidesToShow:1,slidesToScroll:1,mobileFirst:true,nextArrow:'',prevArrow:'',responsive:[{breakpoint:550,settings:{slidesToShow:2}},{breakpoint:768,settings:{slidesToShow:3}},{breakpoint:1024,settings:{slidesToShow:4}}]});$('*[data-open-accordion]').click(function(){$('#product-form-accordion').foundation('down',$('#'+$(this).attr('data-open-accordion')));$(this).hide();});});","/**\n * what-input - A global utility for tracking the current input method (mouse, keyboard or touch).\n * @version v5.2.12\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 * bail out if there is no document or window\n\t * (i.e. in a node/non-DOM environment)\n\t *\n\t * Return a stubbed API instead\n\t */\n\t if (typeof document === 'undefined' || typeof window === 'undefined') {\n\t return {\n\t // always return \"initial\" because no interaction will ever be detected\n\t ask: function ask() {\n\t return 'initial';\n\t },\n\n\t // always return null\n\t element: function element() {\n\t return null;\n\t },\n\n\t // no-op\n\t ignoreKeys: function ignoreKeys() {},\n\n\t // no-op\n\t specificKeys: function specificKeys() {},\n\n\t // no-op\n\t registerOnChange: function registerOnChange() {},\n\n\t // no-op\n\t unRegisterOnChange: function unRegisterOnChange() {}\n\t };\n\t }\n\n\t /*\n\t * variables\n\t */\n\n\t // cache document.documentElement\n\t var docElem = document.documentElement;\n\n\t // currently focused dom element\n\t var currentElement = null;\n\n\t // last used input type\n\t var currentInput = 'initial';\n\n\t // last used input intent\n\t var currentIntent = currentInput;\n\n\t // UNIX timestamp of current event\n\t var currentTimestamp = Date.now();\n\n\t // check for a `data-whatpersist` attribute on either the `html` or `body` elements, defaults to `true`\n\t var shouldPersist = false;\n\n\t // form input types\n\t var formInputs = ['button', 'input', 'select', 'textarea'];\n\n\t // empty array for holding callback functions\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 var specificMap = [];\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 touchend: 'touch'\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\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\n\t // check support for passive event listeners\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\t // fail silently\n\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 };\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, capture: true } : true;\n\n\t document.addEventListener('DOMContentLoaded', setPersist, true);\n\n\t // pointer events (mouse, pen, touch)\n\t if (window.PointerEvent) {\n\t window.addEventListener('pointerdown', setInput, true);\n\t window.addEventListener('pointermove', setIntent, true);\n\t } else if (window.MSPointerEvent) {\n\t window.addEventListener('MSPointerDown', setInput, true);\n\t window.addEventListener('MSPointerMove', setIntent, true);\n\t } else {\n\t // mouse events\n\t window.addEventListener('mousedown', setInput, true);\n\t window.addEventListener('mousemove', setIntent, true);\n\n\t // touch events\n\t if ('ontouchstart' in window) {\n\t window.addEventListener('touchstart', setInput, options);\n\t window.addEventListener('touchend', setInput, true);\n\t }\n\t }\n\n\t // mouse wheel\n\t window.addEventListener(detectWheel(), setIntent, options);\n\n\t // keyboard events\n\t window.addEventListener('keydown', setInput, true);\n\t window.addEventListener('keyup', setInput, true);\n\n\t // focus events\n\t window.addEventListener('focusin', setElement, true);\n\t window.addEventListener('focusout', clearElement, true);\n\t };\n\n\t // checks if input persistence should happen and\n\t // get saved state from session storage if true (defaults to `false`)\n\t var setPersist = function setPersist() {\n\t shouldPersist = !(docElem.getAttribute('data-whatpersist') === 'false' || document.body.getAttribute('data-whatpersist') === 'false');\n\n\t if (shouldPersist) {\n\t // check for session variables and use if available\n\t try {\n\t if (window.sessionStorage.getItem('what-input')) {\n\t currentInput = window.sessionStorage.getItem('what-input');\n\t }\n\n\t if (window.sessionStorage.getItem('what-intent')) {\n\t currentIntent = window.sessionStorage.getItem('what-intent');\n\t }\n\t } catch (e) {\n\t // fail silently\n\t }\n\t }\n\n\t // always run these so at least `initial` state is set\n\t doUpdate('input');\n\t doUpdate('intent');\n\t };\n\n\t // checks conditions before updating new input\n\t var setInput = function setInput(event) {\n\t var eventKey = event.which;\n\t var value = inputMap[event.type];\n\n\t if (value === 'pointer') {\n\t value = pointerType(event);\n\t }\n\n\t var ignoreMatch = !specificMap.length && ignoreMap.indexOf(eventKey) === -1;\n\n\t var specificMatch = specificMap.length && specificMap.indexOf(eventKey) !== -1;\n\n\t var shouldUpdate = value === 'keyboard' && eventKey && (ignoreMatch || specificMatch) || value === 'mouse' || value === 'touch';\n\n\t // prevent touch detection from being overridden by event execution order\n\t if (validateTouch(value)) {\n\t shouldUpdate = false;\n\t }\n\n\t if (shouldUpdate && currentInput !== value) {\n\t currentInput = value;\n\n\t persistInput('input', currentInput);\n\t doUpdate('input');\n\t }\n\n\t if (shouldUpdate && currentIntent !== value) {\n\t // preserve intent for keyboard interaction with form fields\n\t var activeElem = document.activeElement;\n\t var notFormInput = activeElem && activeElem.nodeName && (formInputs.indexOf(activeElem.nodeName.toLowerCase()) === -1 || activeElem.nodeName.toLowerCase() === 'button' && !checkClosest(activeElem, 'form'));\n\n\t if (notFormInput) {\n\t currentIntent = value;\n\n\t persistInput('intent', currentIntent);\n\t doUpdate('intent');\n\t }\n\t }\n\t };\n\n\t // updates the doc and `inputTypes` array with new input\n\t var doUpdate = function doUpdate(which) {\n\t docElem.setAttribute('data-what' + which, which === 'input' ? currentInput : currentIntent);\n\n\t fireFunctions(which);\n\t };\n\n\t // updates input intent for `mousemove` and `pointermove`\n\t var setIntent = function setIntent(event) {\n\t var value = inputMap[event.type];\n\n\t if (value === 'pointer') {\n\t value = pointerType(event);\n\t }\n\n\t // test to see if `mousemove` happened relative to the screen to detect scrolling versus mousemove\n\t detectScrolling(event);\n\n\t // only execute if scrolling isn't happening\n\t if ((!isScrolling && !validateTouch(value) || isScrolling && event.type === 'wheel' || event.type === 'mousewheel' || event.type === 'DOMMouseScroll') && currentIntent !== value) {\n\t currentIntent = value;\n\n\t persistInput('intent', currentIntent);\n\t doUpdate('intent');\n\t }\n\t };\n\n\t var setElement = function setElement(event) {\n\t if (!event.target.nodeName) {\n\t // If nodeName is undefined, clear the element\n\t // This can happen if click inside an element.\n\t clearElement();\n\t return;\n\t }\n\n\t currentElement = event.target.nodeName.toLowerCase();\n\t docElem.setAttribute('data-whatelement', currentElement);\n\n\t if (event.target.classList && event.target.classList.length) {\n\t docElem.setAttribute('data-whatclasses', event.target.classList.toString().replace(' ', ','));\n\t }\n\t };\n\n\t var clearElement = function clearElement() {\n\t currentElement = null;\n\n\t docElem.removeAttribute('data-whatelement');\n\t docElem.removeAttribute('data-whatclasses');\n\t };\n\n\t var persistInput = function persistInput(which, value) {\n\t if (shouldPersist) {\n\t try {\n\t window.sessionStorage.setItem('what-' + which, value);\n\t } catch (e) {\n\t // fail silently\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 // prevent touch detection from being overridden by event execution order\n\t var validateTouch = function validateTouch(value) {\n\t var timestamp = Date.now();\n\n\t var touchIsValid = value === 'mouse' && currentInput === 'touch' && timestamp - currentTimestamp < 200;\n\n\t currentTimestamp = timestamp;\n\n\t return touchIsValid;\n\t };\n\n\t // detect version of mouse wheel event to use\n\t // via https://developer.mozilla.org/en-US/docs/Web/API/Element/wheel_event\n\t var detectWheel = function detectWheel() {\n\t var wheelType = null;\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 // runs callback functions\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, type === 'input' ? currentInput : currentIntent);\n\t }\n\t }\n\t };\n\n\t // finds matching element in an object\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 var detectScrolling = function detectScrolling(event) {\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\t };\n\n\t // manual version of `closest()`\n\t var checkClosest = function checkClosest(elem, tag) {\n\t var ElementPrototype = window.Element.prototype;\n\n\t if (!ElementPrototype.matches) {\n\t ElementPrototype.matches = ElementPrototype.msMatchesSelector || ElementPrototype.webkitMatchesSelector;\n\t }\n\n\t if (!ElementPrototype.closest) {\n\t do {\n\t if (elem.matches(tag)) {\n\t return elem;\n\t }\n\n\t elem = elem.parentElement || elem.parentNode;\n\t } while (elem !== null && elem.nodeType === 1);\n\n\t return null;\n\t } else {\n\t return elem.closest(tag);\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: 'intent'|'input'\n\t // 'input' (default): returns the same value as the `data-whatinput` attribute\n\t // 'intent': includes `data-whatintent` value if it's different than `data-whatinput`\n\t ask: function ask(opt) {\n\t return opt === 'intent' ? currentIntent : currentInput;\n\t },\n\n\t // returns string: the currently focused element or null\n\t element: function element() {\n\t return currentElement;\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 // overwrites specific char keys to update on\n\t specificKeys: function specificKeys(arr) {\n\t specificMap = 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 || position === 0) {\n\t functionList.splice(position, 1);\n\t }\n\t },\n\n\t clearStorage: function clearStorage() {\n\t window.sessionStorage.clear();\n\t }\n\t };\n\t}();\n\n/***/ })\n/******/ ])\n});\n;","(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_EXTERNAL__\"] = factory(require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"] = factory(root[\"jQuery\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.core.js\":\n/*!*******************************!*\\\n !*** ./js/foundation.core.js ***!\n \\*******************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* binding */ Foundation; }\n/* harmony export */ });\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\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\n\n\nvar FOUNDATION_VERSION = '6.8.1';\n\n// Global Foundation object\n// This is attached to the window, or used as a module for AMD/Browserify\nvar Foundation = {\n version: FOUNDATION_VERSION,\n /**\n * Stores initialized plugins.\n */\n _plugins: {},\n /**\n * Stores generated unique ids for plugin instances\n */\n _uuids: [],\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);\n // 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 var attrName = hyphenate(className);\n\n // Add to the Foundation object and the plugins list (for reflowing)\n this._plugins[attrName] = this[className] = _plugin;\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 = (0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__.GetYoDigits)(6, pluginName);\n if (!plugin.$element.attr(\"data-\".concat(pluginName))) {\n plugin.$element.attr(\"data-\".concat(pluginName), plugin.uuid);\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 plugin.$element.trigger(\"init.zf.\".concat(pluginName));\n this._uuids.push(plugin.uuid);\n return;\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 this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1);\n plugin.$element.removeAttr(\"data-\".concat(pluginName)).removeData('zfPlugin')\n /**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */.trigger(\"destroyed.zf.\".concat(pluginName));\n for (var prop in plugin) {\n if (typeof plugin[prop] === 'function') {\n plugin[prop] = null; //clean up script to prep for garbage collection.\n }\n }\n\n return;\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());\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 fns[type](plugins);\n }\n } catch (err) {\n console.error(err);\n } finally {\n return plugins;\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 }\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 var _this = this;\n\n // Iterate through each plugin\n jquery__WEBPACK_IMPORTED_MODULE_0___default().each(plugins, function (i, name) {\n // Get the current plugin\n var plugin = _this._plugins[name];\n\n // Localize the search to all elements inside elem, as well as elem itself, unless elem === document\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 });\n\n // For each plugin found, initialize it\n $elem.each(function () {\n var $el = jquery__WEBPACK_IMPORTED_MODULE_0___default()(this),\n opts = {\n reflow: true\n };\n if ($el.attr('data-options')) {\n $el.attr('data-options').split(';').forEach(function (option) {\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 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 * 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 = jquery__WEBPACK_IMPORTED_MODULE_0___default()('.no-js');\n if ($noJS.length) {\n $noJS.removeClass('no-js');\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 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 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(jquery__WEBPACK_IMPORTED_MODULE_0___default()(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 return this;\n };\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().fn).foundation = foundation;\n return (jquery__WEBPACK_IMPORTED_MODULE_0___default());\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 if (timer === null) {\n timer = setTimeout(function () {\n func.apply(context, args);\n timer = null;\n }, delay);\n }\n };\n }\n};\nwindow.Foundation = Foundation;\n\n// Polyfill for requestAnimationFrame\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 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 if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent) || !window.requestAnimationFrame || !window.cancelAnimationFrame) {\n var lastTime = 0;\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 window.cancelAnimationFrame = clearTimeout;\n }\n /**\n * Polyfill for performance.now, required by rAF\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})();\nif (!Function.prototype.bind) {\n /* eslint-disable no-extend-native */\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 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 if (this.prototype) {\n // native functions don't have a prototype\n fNOP.prototype = this.prototype;\n }\n fBound.prototype = new fNOP();\n return fBound;\n };\n}\n// Polyfill to get the name of a function in IE9\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}\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}\n// Convert PascalCase to kebab-case\n// Thank you: http://stackoverflow.com/a/8955580\nfunction hyphenate(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\n\n/***/ }),\n\n/***/ \"./js/foundation.core.plugin.js\":\n/*!**************************************!*\\\n !*** ./js/foundation.core.plugin.js ***!\n \\**************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Plugin: function() { return /* binding */ Plugin; }\n/* harmony export */ });\n/* harmony import */ var _foundation_core_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./foundation.core.utils */ \"./js/foundation.core.utils.js\");\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\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, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\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)\nvar Plugin = /*#__PURE__*/function () {\n function Plugin(element, options) {\n _classCallCheck(this, Plugin);\n this._setup(element, options);\n var pluginName = getPluginName(this);\n this.uuid = (0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_0__.GetYoDigits)(6, pluginName);\n if (!this.$element.attr(\"data-\".concat(pluginName))) {\n this.$element.attr(\"data-\".concat(pluginName), this.uuid);\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 this.$element.trigger(\"init.zf.\".concat(pluginName));\n }\n _createClass(Plugin, [{\n key: \"destroy\",\n value: function destroy() {\n this._destroy();\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 */.trigger(\"destroyed.zf.\".concat(pluginName));\n for (var prop in this) {\n if (this.hasOwnProperty(prop)) {\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\nfunction hyphenate(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\nfunction getPluginName(obj) {\n return hyphenate(obj.className);\n}\n\n\n/***/ }),\n\n/***/ \"./js/foundation.core.utils.js\":\n/*!*************************************!*\\\n !*** ./js/foundation.core.utils.js ***!\n \\*************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ GetYoDigits: function() { return /* binding */ GetYoDigits; },\n/* harmony export */ RegExpEscape: function() { return /* binding */ RegExpEscape; },\n/* harmony export */ ignoreMousedisappear: function() { return /* binding */ ignoreMousedisappear; },\n/* harmony export */ onLoad: function() { return /* binding */ onLoad; },\n/* harmony export */ rtl: function() { return /* binding */ rtl; },\n/* harmony export */ transitionend: function() { return /* binding */ transitionend; }\n/* harmony export */ });\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 */\nfunction rtl() {\n return jquery__WEBPACK_IMPORTED_MODULE_0___default()('html').attr('dir') === 'rtl';\n}\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 */\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 for (var i = 0; i < length; i++) {\n str += chars[Math.floor(Math.random() * charsLength)];\n }\n return namespace ? \"\".concat(str, \"-\").concat(namespace) : str;\n}\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 */\nfunction RegExpEscape(str) {\n return str.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\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 for (var transition in transitions) {\n if (typeof elem.style[transition] !== 'undefined') {\n end = transitions[transition];\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/**\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 */\nfunction onLoad($elem, handler) {\n var didLoad = document.readyState === 'complete';\n var eventType = (didLoad ? '_didLoad' : 'load') + '.zf.util.onLoad';\n var cb = function cb() {\n return $elem.triggerHandler(eventType);\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 return eventType;\n}\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 */\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 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 var callback = handler.bind.apply(handler, [this, eLeave].concat(rest));\n\n // The mouse left: call the given callback if the mouse entered elsewhere\n if (eLeave.relatedTarget !== null) {\n return callback();\n }\n\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 setTimeout(function leaveEventDebouncer() {\n if (!ignoreLeaveWindow && document.hasFocus && !document.hasFocus()) {\n return callback();\n }\n\n // Otherwise, wait for the mouse to reeapear outside of the element,\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/***/ \"./js/foundation.util.mediaQuery.js\":\n/*!******************************************!*\\\n !*** ./js/foundation.util.mediaQuery.js ***!\n \\******************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ MediaQuery: function() { return /* binding */ MediaQuery; }\n/* harmony export */ });\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 _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n// Default set of media queries\n// const 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),' +\n// 'only screen and (min--moz-device-pixel-ratio: 2),' +\n// 'only screen and (-o-min-device-pixel-ratio: 2/1),' +\n// 'only screen and (min-device-pixel-ratio: 2),' +\n// 'only screen and (min-resolution: 192dpi),' +\n// 'only screen and (min-resolution: 2dppx)'\n// };\n\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/* eslint-disable */\nwindow.matchMedia || (window.matchMedia = function () {\n \"use strict\";\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n var styleMedia = window.styleMedia || window.media;\n\n // For those that don't support matchMedium\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 if (!script) {\n document.head.appendChild(style);\n } else {\n script.parentNode.insertBefore(style, script);\n }\n\n // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\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; } }';\n\n // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\n if (style.styleSheet) {\n style.styleSheet.cssText = text;\n } else {\n style.textContent = text;\n }\n\n // Test if media query is true or false\n return info.width === '1px';\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 * 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 this;\n } else {\n this.isInitialized = true;\n }\n var self = this;\n var $meta = jquery__WEBPACK_IMPORTED_MODULE_0___default()('meta.foundation-mq');\n if (!$meta.length) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('').appendTo(document.head);\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 this.current = this._getCurrentSize();\n this._watcher();\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 this._init();\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 if (query) {\n return window.matchMedia(query).matches;\n }\n return false;\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 * 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);\n\n // If the next breakpoint does not match, the screen is smaller than\n // the upper limit of this breakpoint.\n if (nextSize) {\n return !this.atLeast(nextSize);\n }\n\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 return true;\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 var _parts = _slicedToArray(parts, 2),\n bpSize = _parts[0],\n _parts$ = _parts[1],\n bpModifier = _parts$ === void 0 ? '' : _parts$;\n\n // Only the breakpont\n if (bpModifier === 'only') {\n return this.only(bpSize);\n }\n // At least the breakpoint (included)\n if (!bpModifier || bpModifier === 'up') {\n return this.atLeast(bpSize);\n }\n // Up to the breakpoint (included)\n if (bpModifier === 'down') {\n return this.upTo(bpSize);\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 * 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 return null;\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 var queryIndex = this.queries.findIndex(function (q) {\n return _this._getQueryName(q) === size;\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 var nextQuery = this.queries[queryIndex + 1];\n return nextQuery ? nextQuery.name : null;\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 * 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 for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n if (window.matchMedia(query.value).matches) {\n matched = query;\n }\n }\n return matched && this._getQueryName(matched);\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 jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('resize.zf.trigger', function () {\n var newSize = _this2._getCurrentSize(),\n currentSize = _this2.current;\n if (newSize !== currentSize) {\n // Change the current media query\n _this2.current = newSize;\n\n // Broadcast the media query change on the window\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);\n }\n });\n }\n};\n\n// Thank you: https://github.com/sindresorhus/query-string\nfunction parseStyleToObject(str) {\n var styleObject = {};\n if (typeof str !== 'string') {\n return styleObject;\n }\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\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);\n\n // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n val = typeof val === 'undefined' ? null : decodeURIComponent(val);\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 return ret;\n }, {});\n return styleObject;\n}\n\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!***********************************************!*\\\n !*** ./js/entries/plugins/foundation.core.js ***!\n \\***********************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_1__.Foundation; },\n/* harmony export */ GetYoDigits: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.GetYoDigits; },\n/* harmony export */ Plugin: function() { return /* reexport safe */ _foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__.Plugin; },\n/* harmony export */ RegExpEscape: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.RegExpEscape; },\n/* harmony export */ ignoreMousedisappear: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.ignoreMousedisappear; },\n/* harmony export */ onLoad: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.onLoad; },\n/* harmony export */ rtl: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.rtl; },\n/* harmony export */ transitionend: function() { return /* reexport safe */ _foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__.transitionend; }\n/* harmony export */ });\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 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// --- 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()));\n\n// 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;\n\n// 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;\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;\n\n// --- 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/******/ \treturn __webpack_exports__;\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_EXTERNAL__\"] = 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})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.util.box.js\":\n/*!***********************************!*\\\n !*** ./js/foundation.util.box.js ***!\n \\***********************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Box: function() { return /* binding */ Box; }\n/* harmony export */ });\nvar Box = {\n ImNotTouchingYou: ImNotTouchingYou,\n OverlapArea: OverlapArea,\n GetDimensions: GetDimensions,\n GetExplicitOffsets: GetExplicitOffsets\n};\n\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 */\nfunction ImNotTouchingYou(element, parent, lrOnly, tbOnly, ignoreBottom) {\n return OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom) === 0;\n}\nfunction OverlapArea(element, parent, lrOnly, tbOnly, ignoreBottom) {\n var eleDims = GetDimensions(element),\n topOver,\n bottomOver,\n leftOver,\n rightOver;\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 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 if (lrOnly) {\n return leftOver + rightOver;\n }\n if (tbOnly) {\n return topOver + bottomOver;\n }\n\n // use sum of squares b/c we care about overlap area.\n return Math.sqrt(topOver * topOver + bottomOver * bottomOver + leftOver * leftOver + rightOver * rightOver);\n}\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 */\nfunction GetDimensions(elem) {\n elem = elem.length ? elem[0] : elem;\n if (elem === window || elem === document) {\n throw new Error(\"I'm sorry, Dave. I'm afraid I can't do that.\");\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/**\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 */\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 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 case 'bottom':\n topVal = $anchorDims.offset.top + $anchorDims.height + vOffset;\n break;\n case 'left':\n leftVal = $anchorDims.offset.left - ($eleDims.width + hOffset);\n break;\n case 'right':\n leftVal = $anchorDims.offset.left + $anchorDims.width + hOffset;\n break;\n }\n\n // set alignment related attribute\n switch (position) {\n case 'top':\n case 'bottom':\n switch (alignment) {\n case 'left':\n leftVal = $anchorDims.offset.left + hOffset;\n break;\n case 'right':\n leftVal = $anchorDims.offset.left - $eleDims.width + $anchorDims.width - hOffset;\n break;\n case 'center':\n leftVal = isOverflow ? hOffset : $anchorDims.offset.left + $anchorDims.width / 2 - $eleDims.width / 2 + hOffset;\n break;\n }\n break;\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 case 'top':\n topVal = $anchorDims.offset.top + vOffset;\n break;\n case 'center':\n topVal = $anchorDims.offset.top + vOffset + $anchorDims.height / 2 - $eleDims.height / 2;\n break;\n }\n break;\n }\n }\n return {\n top: topVal,\n left: leftVal\n };\n}\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/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!***************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.box.js ***!\n \\***************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Box: function() { return /* reexport safe */ _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__.Box; },\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; }\n/* harmony export */ });\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 import */ var _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.box */ \"./js/foundation.util.box.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Box = _foundation_util_box__WEBPACK_IMPORTED_MODULE_1__.Box;\n\n}();\n/******/ \treturn __webpack_exports__;\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_EXTERNAL__=e(require(\"./foundation.core\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.box\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"]))}(self,function(r){return function(){\"use strict\";var o={\"./js/foundation.util.box.js\":function(t,e,o){o.r(e),o.d(e,{Box:function(){return f}});var f={ImNotTouchingYou:function(t,e,o,f,n){return 0===i(t,e,o,f,n)},OverlapArea:i,GetDimensions:h,GetExplicitOffsets:function(t,e,o,f,n,i,r){var s,u,a=h(t),d=e?h(e):null;if(null!==d){switch(o){case\"top\":s=d.offset.top-(a.height+n);break;case\"bottom\":s=d.offset.top+d.height+n;break;case\"left\":u=d.offset.left-(a.width+i);break;case\"right\":u=d.offset.left+d.width+i}switch(o){case\"top\":case\"bottom\":switch(f){case\"left\":u=d.offset.left+i;break;case\"right\":u=d.offset.left-a.width+d.width-i;break;case\"center\":u=r?i:d.offset.left+d.width/2-a.width/2+i}break;case\"right\":case\"left\":switch(f){case\"bottom\":s=d.offset.top-n+d.height-a.height;break;case\"top\":s=d.offset.top+n;break;case\"center\":s=d.offset.top+n+d.height/2-a.height/2}}}return{top:s,left:u}}};function i(t,e,o,f,n){var i,r,s,t=h(t);return e=e?(i=(e=h(e)).height+e.offset.top-(t.offset.top+t.height),r=t.offset.top-e.offset.top,s=t.offset.left-e.offset.left,e.width+e.offset.left-(t.offset.left+t.width)):(i=t.windowDims.height+t.windowDims.offset.top-(t.offset.top+t.height),r=t.offset.top-t.windowDims.offset.top,s=t.offset.left-t.windowDims.offset.left,t.windowDims.width-(t.offset.left+t.width)),i=n?0:Math.min(i,0),r=Math.min(r,0),s=Math.min(s,0),e=Math.min(e,0),o?s+e:f?r+i:Math.sqrt(r*r+i*i+s*s+e*e)}function h(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(),t=t.parentNode.getBoundingClientRect(),o=document.body.getBoundingClientRect(),f=window.pageYOffset,n=window.pageXOffset;return{width:e.width,height:e.height,offset:{top:e.top+f,left:e.left+n},parentDims:{width:t.width,height:t.height,offset:{top:t.top+f,left:t.left+n}},windowDims:{width:o.width,height:o.height,offset:{top:f,left:n}}}}},\"./foundation.core\":function(t){t.exports=r}},f={};function n(t){var e=f[t];return void 0!==e||(e=f[t]={exports:{}},o[t](e,e.exports,n)),e.exports}n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)};var t,e,i={};return(n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})})(i),n.d(i,{Box:function(){return e.Box},Foundation:function(){return t.Foundation}}),t=n(\"./foundation.core\"),e=n(\"./js/foundation.util.box.js\"),t.Foundation.Box=e.Box,i}()});\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_EXTERNAL__\"] = 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})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.util.imageLoader.js\":\n/*!*******************************************!*\\\n !*** ./js/foundation.util.imageLoader.js ***!\n \\*******************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ onImagesLoaded: function() { return /* binding */ onImagesLoaded; }\n/* harmony export */ });\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 * 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 */\nfunction onImagesLoaded(images, callback) {\n var unloaded = images.length;\n if (unloaded === 0) {\n callback();\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();\n // Still count image as loaded if it finalizes with an error.\n var events = \"load.zf.images error.zf.images\";\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(image).one(events, function me() {\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 function singleImageLoaded() {\n unloaded--;\n if (unloaded === 0) {\n callback();\n }\n }\n}\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/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!***********************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.imageLoader.js ***!\n \\***********************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ onImagesLoaded: function() { return /* reexport safe */ _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__.onImagesLoaded; }\n/* harmony export */ });\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 import */ var _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.imageLoader */ \"./js/foundation.util.imageLoader.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.onImagesLoaded = _foundation_util_imageLoader__WEBPACK_IMPORTED_MODULE_1__.onImagesLoaded;\n\n}();\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=foundation.util.imageLoader.js.map","!function(e,o){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=o(require(\"./foundation.core\"),require(\"jquery\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\",\"jquery\"],o):\"object\"==typeof exports?exports.__FOUNDATION_EXTERNAL__=o(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.imageLoader\"]=o(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(self,function(i,a){return function(){\"use strict\";var n={\"./js/foundation.util.imageLoader.js\":function(e,o,n){n.r(o),n.d(o,{onImagesLoaded:function(){return t}});var o=n(\"jquery\"),r=n.n(o);function t(e,o){var n=e.length;function t(){0===--n&&o()}0===n&&o(),e.each(function(){var e,o;this.complete&&void 0!==this.naturalWidth?t():(e=new Image,o=\"load.zf.images error.zf.images\",r()(e).one(o,function e(){r()(this).off(o,e),t()}),e.src=r()(this).attr(\"src\"))})}},\"./foundation.core\":function(e){e.exports=i},jquery:function(e){e.exports=a}},t={};function r(e){var o=t[e];return void 0!==o||(o=t[e]={exports:{}},n[e](o,o.exports,r)),o.exports}r.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(o,{a:o}),o},r.d=function(e,o){for(var n in o)r.o(o,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:o[n]})},r.o=function(e,o){return Object.prototype.hasOwnProperty.call(e,o)};var e,o,u={};return(r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})})(u),r.d(u,{Foundation:function(){return e.Foundation},onImagesLoaded:function(){return o.onImagesLoaded}}),e=r(\"./foundation.core\"),o=r(\"./js/foundation.util.imageLoader.js\"),e.Foundation.onImagesLoaded=o.onImagesLoaded,u}()});\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_EXTERNAL__\"] = 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})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__, __WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.util.keyboard.js\":\n/*!****************************************!*\\\n !*** ./js/foundation.util.keyboard.js ***!\n \\****************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Keyboard: function() { return /* binding */ Keyboard; }\n/* harmony export */ });\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\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 = {};\n\n// Functions pulled out to be referenceable from internals\nfunction findFocusable($element) {\n if (!$element) {\n return false;\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 return true;\n }).sort(function (a, b) {\n if (jquery__WEBPACK_IMPORTED_MODULE_0___default()(a).attr('tabindex') === jquery__WEBPACK_IMPORTED_MODULE_0___default()(b).attr('tabindex')) {\n return 0;\n }\n var aTabIndex = parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(a).attr('tabindex'), 10),\n bTabIndex = parseInt(jquery__WEBPACK_IMPORTED_MODULE_0___default()(b).attr('tabindex'), 10);\n // Undefined is treated the same as 0\n if (typeof jquery__WEBPACK_IMPORTED_MODULE_0___default()(a).attr('tabindex') === 'undefined' && bTabIndex > 0) {\n return 1;\n }\n if (typeof jquery__WEBPACK_IMPORTED_MODULE_0___default()(b).attr('tabindex') === 'undefined' && aTabIndex > 0) {\n return -1;\n }\n if (aTabIndex === 0 && bTabIndex > 0) {\n return 1;\n }\n if (bTabIndex === 0 && aTabIndex > 0) {\n return -1;\n }\n if (aTabIndex < bTabIndex) {\n return -1;\n }\n if (aTabIndex > bTabIndex) {\n return 1;\n }\n });\n}\nfunction parseKey(event) {\n var key = keyCodes[event.which || event.keyCode] || String.fromCharCode(event.which).toUpperCase();\n\n // Remove un-printable characters, e.g. for `fromCharCode` calls for CTRL only events\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);\n\n // Remove trailing underscore, in case only modifiers were used (e.g. only `CTRL_ALT`)\n key = key.replace(/_$/, '');\n return key;\n}\nvar Keyboard = {\n keys: getKeyCodes(keyCodes),\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 * 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!');\n\n // Ignore the event if it was already handled\n if (event.zfIsKeyHandled === true) return;\n\n // This component does not differentiate between ltr and rtl\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 ((0,_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__.rtl)()) cmds = jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({}, commandList.ltr, commandList.rtl);else cmds = jquery__WEBPACK_IMPORTED_MODULE_0___default().extend({}, commandList.rtl, commandList.ltr);\n }\n command = cmds[keyCode];\n fn = functions[command];\n // Execute the handler if found\n if (fn && typeof fn === 'function') {\n var returnValue = fn.apply();\n\n // Mark the event as \"handled\" to prevent future handlings\n event.zfIsKeyHandled = true;\n\n // Execute function when event was handled\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 * 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\n findFocusable: findFocusable,\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 * 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 * 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/*\n * Constants for easier comparing.\n * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE\n */\nfunction getKeyCodes(kcs) {\n var k = {};\n for (var kc in kcs) {\n if (kcs.hasOwnProperty(kc)) k[kcs[kc]] = kcs[kc];\n }\n return k;\n}\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/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!********************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.keyboard.js ***!\n \\********************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ Keyboard: function() { return /* reexport safe */ _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard; }\n/* harmony export */ });\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 import */ var _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.keyboard */ \"./js/foundation.util.keyboard.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Keyboard = _foundation_util_keyboard__WEBPACK_IMPORTED_MODULE_1__.Keyboard;\n\n}();\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=foundation.util.keyboard.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_EXTERNAL__=t(require(\"./foundation.core\"),require(\"jquery\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.keyboard\"]=t(e.__FOUNDATION_EXTERNAL__[\"foundation.core\"],e.jQuery))}(self,function(i,u){return function(){\"use strict\";var n={\"./js/foundation.util.keyboard.js\":function(e,t,n){n.r(t),n.d(t,{Keyboard:function(){return f}});var t=n(\"jquery\"),r=n.n(t),a=n(\"./foundation.core\"),o={9:\"TAB\",13:\"ENTER\",27:\"ESCAPE\",32:\"SPACE\",35:\"END\",36:\"HOME\",37:\"ARROW_LEFT\",38:\"ARROW_UP\",39:\"ARROW_RIGHT\",40:\"ARROW_DOWN\"},i={};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!(!r()(this).is(\":visible\")||r()(this).attr(\"tabindex\")<0)}).sort(function(e,t){var n,o;return r()(e).attr(\"tabindex\")===r()(t).attr(\"tabindex\")?0:(n=parseInt(r()(e).attr(\"tabindex\"),10),o=parseInt(r()(t).attr(\"tabindex\"),10),void 0===r()(e).attr(\"tabindex\")&&0 arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n\n// Default set of media queries\n// const 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),' +\n// 'only screen and (min--moz-device-pixel-ratio: 2),' +\n// 'only screen and (-o-min-device-pixel-ratio: 2/1),' +\n// 'only screen and (min-device-pixel-ratio: 2),' +\n// 'only screen and (min-resolution: 192dpi),' +\n// 'only screen and (min-resolution: 2dppx)'\n// };\n\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/* eslint-disable */\nwindow.matchMedia || (window.matchMedia = function () {\n \"use strict\";\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n var styleMedia = window.styleMedia || window.media;\n\n // For those that don't support matchMedium\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 if (!script) {\n document.head.appendChild(style);\n } else {\n script.parentNode.insertBefore(style, script);\n }\n\n // 'style.currentStyle' is used by IE <= 8 and 'window.getComputedStyle' for all other browsers\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; } }';\n\n // 'style.styleSheet' is used by IE <= 8 and 'style.textContent' for all other browsers\n if (style.styleSheet) {\n style.styleSheet.cssText = text;\n } else {\n style.textContent = text;\n }\n\n // Test if media query is true or false\n return info.width === '1px';\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 * 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 this;\n } else {\n this.isInitialized = true;\n }\n var self = this;\n var $meta = jquery__WEBPACK_IMPORTED_MODULE_0___default()('meta.foundation-mq');\n if (!$meta.length) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()('').appendTo(document.head);\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 this.current = this._getCurrentSize();\n this._watcher();\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 this._init();\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 if (query) {\n return window.matchMedia(query).matches;\n }\n return false;\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 * 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);\n\n // If the next breakpoint does not match, the screen is smaller than\n // the upper limit of this breakpoint.\n if (nextSize) {\n return !this.atLeast(nextSize);\n }\n\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 return true;\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 var _parts = _slicedToArray(parts, 2),\n bpSize = _parts[0],\n _parts$ = _parts[1],\n bpModifier = _parts$ === void 0 ? '' : _parts$;\n\n // Only the breakpont\n if (bpModifier === 'only') {\n return this.only(bpSize);\n }\n // At least the breakpoint (included)\n if (!bpModifier || bpModifier === 'up') {\n return this.atLeast(bpSize);\n }\n // Up to the breakpoint (included)\n if (bpModifier === 'down') {\n return this.upTo(bpSize);\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 * 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 return null;\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 var queryIndex = this.queries.findIndex(function (q) {\n return _this._getQueryName(q) === size;\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 var nextQuery = this.queries[queryIndex + 1];\n return nextQuery ? nextQuery.name : null;\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 * 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 for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n if (window.matchMedia(query.value).matches) {\n matched = query;\n }\n }\n return matched && this._getQueryName(matched);\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 jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).on('resize.zf.trigger', function () {\n var newSize = _this2._getCurrentSize(),\n currentSize = _this2.current;\n if (newSize !== currentSize) {\n // Change the current media query\n _this2.current = newSize;\n\n // Broadcast the media query change on the window\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);\n }\n });\n }\n};\n\n// Thank you: https://github.com/sindresorhus/query-string\nfunction parseStyleToObject(str) {\n var styleObject = {};\n if (typeof str !== 'string') {\n return styleObject;\n }\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\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);\n\n // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n val = typeof val === 'undefined' ? null : decodeURIComponent(val);\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 return ret;\n }, {});\n return styleObject;\n}\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/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!**********************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.mediaQuery.js ***!\n \\**********************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ MediaQuery: function() { return /* reexport safe */ _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__.MediaQuery; }\n/* harmony export */ });\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 import */ var _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.mediaQuery */ \"./js/foundation.util.mediaQuery.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.MediaQuery = _foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_1__.MediaQuery;\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.MediaQuery._init();\n\n}();\n/******/ \treturn __webpack_exports__;\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_EXTERNAL__=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))}(self,function(u,a){return function(){\"use strict\";var n={\"./js/foundation.util.mediaQuery.js\":function(e,t,n){n.r(t),n.d(t,{MediaQuery:function(){return d}});var r,i,o,t=n(\"jquery\"),u=n.n(t);function a(e){return(a=\"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 s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:\"undefined\"!=typeof Symbol&&e[Symbol.iterator]||e[\"@@iterator\"];if(null!=n){var r,i,o,u,a=[],s=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);s=!0);}catch(e){c=!0,i=e}finally{try{if(!s&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(c)throw i}}return a}}(e,t)||function(e,t){var n;if(e)return\"string\"==typeof e?c(e,t):\"Map\"===(n=\"Object\"===(n=Object.prototype.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:n)||\"Set\"===n?Array.from(e):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?c(e,t):void 0}(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n').appendTo(document.head);var e,t,n,r=u()(\".foundation-mq\").css(\"font-family\");for(n in t={},e=t=\"string\"==typeof(r=r)&&(r=r.trim().slice(1,-1))?r.split(\"&\").reduce(function(e,t){var t=t.replace(/\\+/g,\" \").split(\"=\"),n=t[0],t=t[1],n=decodeURIComponent(n),t=void 0===t?null:decodeURIComponent(t);return e.hasOwnProperty(n)?Array.isArray(e[n])?e[n].push(t):e[n]=[e[n],t]:e[n]=t,e},{}):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){e=this.get(e);return!!e&&window.matchMedia(e).matches},only:function(e){return e===this._getCurrentSize()},upTo:function(e){e=this.next(e);return!e||!this.atLeast(e)},is:function(e){var t=s(e.trim().split(\" \").filter(function(e){return!!e.length}),2),n=t[0],t=t[1],t=void 0===t?\"\":t;if(\"only\"===t)return this.only(n);if(!t||\"up\"===t)return this.atLeast(n);if(\"down\"===t)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)){t=this.queries[t];if(e===t.name)return t.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 '));e=this.queries[e+1];return e?e.name:null},_getQueryName:function(e){if(\"string\"==typeof e)return e;if(\"object\"===a(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(a(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 if ($sub.length) {\n $item.addClass(hasSubClass);\n if (applyAria) {\n var firstItem = $item.children('a:first');\n firstItem.attr({\n 'aria-haspopup': true,\n 'aria-label': firstItem.attr('aria-label') || firstItem.text()\n });\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 if (type === 'drilldown') {\n $item.attr({\n 'aria-expanded': false\n });\n }\n }\n $sub.addClass(\"submenu \".concat(subMenuClass)).attr({\n 'data-submenu': '',\n 'role': 'menubar'\n });\n if (type === 'drilldown') {\n $sub.attr({\n 'aria-hidden': true\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\n //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/***/ \"./foundation.core\":\n/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.nest.js ***!\n \\****************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ Nest: function() { return /* reexport safe */ _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__.Nest; }\n/* harmony export */ });\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 import */ var _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.nest */ \"./js/foundation.util.nest.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Nest = _foundation_util_nest__WEBPACK_IMPORTED_MODULE_1__.Nest;\n\n}();\n/******/ \treturn __webpack_exports__;\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_EXTERNAL__=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))}(self,function(a,i){return function(){\"use strict\";var t={\"./js/foundation.util.nest.js\":function(e,n,t){t.r(n),t.d(n,{Nest:function(){return o}});var n=t(\"jquery\"),c=t.n(n),o={Feather:function(e){var o=1li, > li > ul, .menu, .menu > li, [data-submenu] > li\").removeClass(\"\".concat(t,\" \").concat(o,\" \").concat(n,\" is-submenu-item submenu is-active\")).removeAttr(\"data-submenu\").css(\"display\",\"\")}}},\"./foundation.core\":function(e){e.exports=a},jquery:function(e){e.exports=i}},o={};function r(e){var n=o[e];return void 0!==n||(n=o[e]={exports:{}},t[e](n,n.exports,r)),n.exports}r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,{a:n}),n},r.d=function(e,n){for(var t in n)r.o(n,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)};var e,n,u={};return(r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})})(u),r.d(u,{Foundation:function(){return e.Foundation},Nest:function(){return n.Nest}}),e=r(\"./foundation.core\"),n=r(\"./js/foundation.util.nest.js\"),e.Foundation.Nest=n.Nest,u}()});\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\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"./foundation.core\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"__FOUNDATION_EXTERNAL__\"] = factory(require(\"./foundation.core\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.timer\"] = factory(root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__foundation_core__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.util.timer.js\":\n/*!*************************************!*\\\n !*** ./js/foundation.util.timer.js ***!\n \\*************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Timer: function() { return /* binding */ Timer; }\n/* harmony export */ });\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 this.isPaused = false;\n this.restart = function () {\n remain = -1;\n clearTimeout(timer);\n this.start();\n };\n this.start = function () {\n this.isPaused = false;\n // if(!elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\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 if (cb && typeof cb === 'function') {\n cb();\n }\n }, remain);\n elem.trigger(\"timerstart.zf.\".concat(nameSpace));\n };\n this.pause = function () {\n this.isPaused = true;\n //if(elem.data('paused')){ return false; }//maybe implement this sanity check if used for other things.\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/***/ \"./foundation.core\":\n/*!****************************************************************************************************************************************************************!*\\\n !*** external {\"root\":[\"__FOUNDATION_EXTERNAL__\",\"foundation.core\"],\"amd\":\"./foundation.core\",\"commonjs\":\"./foundation.core\",\"commonjs2\":\"./foundation.core\"} ***!\n \\****************************************************************************************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!*****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.timer.js ***!\n \\*****************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation; },\n/* harmony export */ Timer: function() { return /* reexport safe */ _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__.Timer; }\n/* harmony export */ });\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 import */ var _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../foundation.util.timer */ \"./js/foundation.util.timer.js\");\n\n\n_foundation_core__WEBPACK_IMPORTED_MODULE_0__.Foundation.Timer = _foundation_util_timer__WEBPACK_IMPORTED_MODULE_1__.Timer;\n\n}();\n/******/ \treturn __webpack_exports__;\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\")):\"function\"==typeof define&&define.amd?define([\"./foundation.core\"],e):\"object\"==typeof exports?exports.__FOUNDATION_EXTERNAL__=e(require(\"./foundation.core\")):(t.__FOUNDATION_EXTERNAL__=t.__FOUNDATION_EXTERNAL__||{},t.__FOUNDATION_EXTERNAL__[\"foundation.util.timer\"]=e(t.__FOUNDATION_EXTERNAL__[\"foundation.core\"]))}(self,function(u){return function(){\"use strict\";var n={\"./js/foundation.util.timer.js\":function(t,e,n){function o(e,t,n){var o,r,i=this,u=t.duration,a=Object.keys(e.data())[0]||\"timer\",f=-1;this.isPaused=!1,this.restart=function(){f=-1,clearTimeout(r),this.start()},this.start=function(){this.isPaused=!1,clearTimeout(r),f=f<=0?u:f,e.data(\"paused\",!1),o=Date.now(),r=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(r),e.data(\"paused\",!0);var t=Date.now();f-=t-o,e.trigger(\"timerpaused.zf.\".concat(a))}}n.r(e),n.d(e,{Timer:function(){return o}})},\"./foundation.core\":function(t){t.exports=u}},o={};function r(t){var e=o[t];return void 0!==e||(e=o[t]={exports:{}},n[t](e,e.exports,r)),e.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)};var t,e,i={};return(r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})})(i),r.d(i,{Foundation:function(){return t.Foundation},Timer:function(){return e.Timer}}),t=r(\"./foundation.core\"),e=r(\"./js/foundation.util.timer.js\"),t.Foundation.Timer=e.Timer,i}()});\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(\"jquery\"), require(\"./foundation.core\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"jquery\", \"./foundation.core\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"__FOUNDATION_EXTERNAL__\"] = factory(require(\"jquery\"), require(\"./foundation.core\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.util.touch\"] = factory(root[\"jQuery\"], root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE_jquery__, __WEBPACK_EXTERNAL_MODULE__foundation_core__) {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ \"./js/foundation.util.touch.js\":\n/*!*************************************!*\\\n !*** ./js/foundation.util.touch.js ***!\n \\*************************************/\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Touch: function() { return /* binding */ Touch; }\n/* harmony export */ });\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 _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\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, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (_typeof(input) !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (_typeof(res) !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n//**************************************************\n//**Work inspired by multiple jquery swipe plugins**\n//**Done by Yohai Ararat ***************************\n//**************************************************\n\n\nvar Touch = {};\nvar startPosX,\n startTime,\n elapsedTime,\n startEvent,\n isMoving = false,\n didMoved = false;\nfunction onTouchEnd(e) {\n this.removeEventListener('touchmove', onTouchMove);\n this.removeEventListener('touchend', onTouchEnd);\n\n // If the touch did not move, consider it as a \"tap\"\n if (!didMoved) {\n var tapEvent = jquery__WEBPACK_IMPORTED_MODULE_0___default().Event('tap', startEvent || e);\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).trigger(tapEvent);\n }\n startEvent = null;\n isMoving = false;\n didMoved = false;\n}\nfunction onTouchMove(e) {\n if (true === (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe).preventDefault) {\n e.preventDefault();\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 if (Math.abs(dx) >= (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe).moveThreshold && elapsedTime <= (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe).timeThreshold) {\n dir = dx > 0 ? 'left' : 'right';\n }\n // else if(Math.abs(dy) >= $.spotSwipe.moveThreshold && elapsedTime <= $.spotSwipe.timeThreshold) {\n // dir = dy > 0 ? 'down' : 'up';\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().Event('swipe', Object.assign({}, e)), dir).trigger(jquery__WEBPACK_IMPORTED_MODULE_0___default().Event(\"swipe\".concat(dir), Object.assign({}, e)));\n }\n }\n}\nfunction onTouchStart(e) {\n if (e.touches.length === 1) {\n startPosX = e.touches[0].pageX;\n startEvent = e;\n isMoving = true;\n didMoved = false;\n startTime = new Date().getTime();\n this.addEventListener('touchmove', onTouchMove, {\n passive: true === (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe).preventDefault\n });\n this.addEventListener('touchend', onTouchEnd, false);\n }\n}\nfunction init() {\n this.addEventListener && this.addEventListener('touchstart', onTouchStart, {\n passive: true\n });\n}\n\n// function teardown() {\n// this.removeEventListener('touchstart', onTouchStart);\n// }\nvar SpotSwipe = /*#__PURE__*/function () {\n function SpotSwipe() {\n _classCallCheck(this, SpotSwipe);\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._init();\n }\n _createClass(SpotSwipe, [{\n key: \"_init\",\n value: function _init() {\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().event).special.swipe = {\n setup: init\n };\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().event).special.tap = {\n setup: init\n };\n jquery__WEBPACK_IMPORTED_MODULE_0___default().each(['left', 'up', 'down', 'right'], function () {\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().event).special[\"swipe\".concat(this)] = {\n setup: function setup() {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(this).on('swipe', (jquery__WEBPACK_IMPORTED_MODULE_0___default().noop));\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 ****************************************************/\nTouch.setupSpotSwipe = function () {\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe) = new SpotSwipe((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n};\n\n/****************************************************\n * Method for adding pseudo drag events to elements *\n ***************************************************/\nTouch.setupTouchHandler = function () {\n (jquery__WEBPACK_IMPORTED_MODULE_0___default().fn).addTouch = function () {\n this.each(function (i, el) {\n jquery__WEBPACK_IMPORTED_MODULE_0___default()(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 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 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 /*left*/, null);\n }\n first.target.dispatchEvent(simulatedEvent);\n };\n };\n};\nTouch.init = function () {\n if (typeof (jquery__WEBPACK_IMPORTED_MODULE_0___default().spotSwipe) === 'undefined') {\n Touch.setupSpotSwipe((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n Touch.setupTouchHandler((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\n }\n};\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/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__foundation_core__;\n\n/***/ }),\n\n/***/ \"jquery\":\n/*!********************************************************************************************!*\\\n !*** external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"} ***!\n \\********************************************************************************************/\n/***/ (function(module) {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t!function() {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = function(exports) {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n!function() {\n/*!*****************************************************!*\\\n !*** ./js/entries/plugins/foundation.util.touch.js ***!\n \\*****************************************************/\n__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Foundation: function() { return /* reexport safe */ _foundation_core__WEBPACK_IMPORTED_MODULE_2__.Foundation; },\n/* harmony export */ Touch: function() { return /* reexport safe */ _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch; }\n/* harmony export */ });\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 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\n\n_foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch.init((jquery__WEBPACK_IMPORTED_MODULE_0___default()));\nwindow.Foundation.Touch = _foundation_util_touch__WEBPACK_IMPORTED_MODULE_1__.Touch;\n\n\n}();\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=foundation.util.touch.js.map","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"jquery\"),require(\"./foundation.core\")):\"function\"==typeof define&&define.amd?define([\"jquery\",\"./foundation.core\"],t):\"object\"==typeof exports?exports.__FOUNDATION_EXTERNAL__=t(require(\"jquery\"),require(\"./foundation.core\")):(e.__FOUNDATION_EXTERNAL__=e.__FOUNDATION_EXTERNAL__||{},e.__FOUNDATION_EXTERNAL__[\"foundation.util.touch\"]=t(e.jQuery,e.__FOUNDATION_EXTERNAL__[\"foundation.core\"]))}(self,function(c,s){return function(){\"use strict\";var n={\"./js/foundation.util.touch.js\":function(e,t,n){n.r(t),n.d(t,{Touch:function(){return f}});var t=n(\"jquery\"),i=n.n(t);function r(e){return(r=\"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){for(var n=0;n=i().spotSwipe.moveThreshold&&s<=i().spotSwipe.timeThreshold?0 1 && arguments[1] !== undefined ? arguments[1] : {};\n this.$element = element;\n this.options = jquery__WEBPACK_IMPORTED_MODULE_0___default().extend(true, {}, Abide.defaults, this.$element.data(), options);\n this.isEnabled = true;\n this.formnovalidate = null;\n this.className = 'Abide'; // ie9 back compat\n this._init();\n }\n\n /**\n * Initializes the Abide plugin and calls functions to get Abide functioning on load.\n * @private\n */\n }, {\n key: \"_init\",\n value: function _init() {\n var _this2 = this;\n this.$inputs = jquery__WEBPACK_IMPORTED_MODULE_0___default().merge(\n // Consider as input to validate:\n this.$element.find('input').not('[type=\"submit\"]'),\n // * all input fields expect submit\n this.$element.find('textarea, select') // * all textareas and select fields\n );\n\n this.$submits = this.$element.find('[type=\"submit\"]');\n var $globalErrors = this.$element.find('[data-abide-error]');\n\n // Add a11y attributes to all fields\n if (this.options.a11yAttributes) {\n this.$inputs.each(function (i, input) {\n return _this2.addA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(input));\n });\n $globalErrors.each(function (i, error) {\n return _this2.addGlobalErrorA11yAttributes(jquery__WEBPACK_IMPORTED_MODULE_0___default()(error));\n });\n }\n this._events();\n }\n\n /**\n * Initializes events for Abide.\n * @private\n */\n }, {\n key: \"_events\",\n value: function _events() {\n var _this3 = this;\n this.$element.off('.abide').on('reset.zf.abide', function () {\n _this3.resetForm();\n }).on('submit.zf.abide', function () {\n return _this3.validateForm();\n });\n this.$submits.off('click.zf.abide keydown.zf.abide').on('click.zf.abide keydown.zf.abide', function (e) {\n if (!e.key || e.key === ' ' || e.key === 'Enter') {\n e.preventDefault();\n _this3.formnovalidate = e.target.getAttribute('formnovalidate') !== null;\n _this3.$element.submit();\n }\n });\n if (this.options.validateOn === 'fieldChange') {\n this.$inputs.off('change.zf.abide').on('change.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n if (this.options.liveValidate) {\n this.$inputs.off('input.zf.abide').on('input.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n if (this.options.validateOnBlur) {\n this.$inputs.off('blur.zf.abide').on('blur.zf.abide', function (e) {\n _this3.validateInput(jquery__WEBPACK_IMPORTED_MODULE_0___default()(e.target));\n });\n }\n }\n\n /**\n * Calls necessary functions to update Abide upon DOM change\n * @private\n */\n }, {\n key: \"_reflow\",\n value: function _reflow() {\n this._init();\n }\n\n /**\n * Checks whether the submitted form should be validated or not, consodering formnovalidate and isEnabled\n * @returns {Boolean}\n * @private\n */\n }, {\n key: \"_validationIsDisabled\",\n value: function _validationIsDisabled() {\n if (this.isEnabled === false) {\n // whole validation disabled\n return true;\n } else if (typeof this.formnovalidate === 'boolean') {\n // triggered by $submit\n return this.formnovalidate;\n }\n // triggered by Enter in non-submit input\n return this.$submits.length ? this.$submits[0].getAttribute('formnovalidate') !== null : false;\n }\n\n /**\n * Enables the whole validation\n */\n }, {\n key: \"enableValidation\",\n value: function enableValidation() {\n this.isEnabled = true;\n }\n\n /**\n * Disables the whole validation\n */\n }, {\n key: \"disableValidation\",\n value: function disableValidation() {\n this.isEnabled = false;\n }\n\n /**\n * Checks whether or not a form element has the required attribute and if it's checked or not\n * @param {Object} element - jQuery object to check for required attribute\n * @returns {Boolean} Boolean value depends on whether or not attribute is checked or empty\n */\n }, {\n key: \"requiredCheck\",\n value: function requiredCheck($el) {\n if (!$el.attr('required')) return true;\n var isGood = true;\n switch ($el[0].type) {\n case 'checkbox':\n isGood = $el[0].checked;\n break;\n case 'select':\n case 'select-one':\n case 'select-multiple':\n var opt = $el.find('option:selected');\n if (!opt.length || !opt.val()) isGood = false;\n break;\n default:\n if (!$el.val() || !$el.val().length) isGood = false;\n }\n return isGood;\n }\n\n /**\n * Get:\n * - Based on $el, the first element(s) corresponding to `formErrorSelector` in this order:\n * 1. The element's direct sibling('s).\n * 2. The element's parent's children.\n * - Element(s) with the attribute `[data-form-error-for]` set with the element's id.\n *\n * This allows for multiple form errors per input, though if none are found, no form errors will be shown.\n *\n * @param {Object} $el - jQuery object to use as reference to find the form error selector.\n * @param {String[]} [failedValidators] - List of failed validators.\n * @returns {Object} jQuery object with the selector.\n */\n }, {\n key: \"findFormError\",\n value: function findFormError($el, failedValidators) {\n var _this4 = this;\n var id = $el.length ? $el[0].id : '';\n var $error = $el.siblings(this.options.formErrorSelector);\n if (!$error.length) {\n $error = $el.parent().find(this.options.formErrorSelector);\n }\n if (id) {\n $error = $error.add(this.$element.find(\"[data-form-error-for=\\\"\".concat(id, \"\\\"]\")));\n }\n if (!!failedValidators) {\n $error = $error.not('[data-form-error-on]');\n failedValidators.forEach(function (v) {\n $error = $error.add($el.siblings(\"[data-form-error-on=\\\"\".concat(v, \"\\\"]\")));\n $error = $error.add(_this4.$element.find(\"[data-form-error-for=\\\"\".concat(id, \"\\\"][data-form-error-on=\\\"\").concat(v, \"\\\"]\")));\n });\n }\n return $error;\n }\n\n /**\n * Get the first element in this order:\n * 2. The