{"version":3,"sources":["node_modules/foundation-sites/dist/js/plugins/foundation.core.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.keyboard.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.mediaQuery.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.motion.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.nest.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.timerAndImageLoader.js","node_modules/foundation-sites/dist/js/plugins/foundation.util.triggers.js","node_modules/foundation-sites/dist/js/plugins/foundation.accordion.js","node_modules/foundation-sites/dist/js/plugins/foundation.accordionMenu.js","node_modules/foundation-sites/dist/js/plugins/foundation.equalizer.js","node_modules/foundation-sites/dist/js/plugins/foundation.offcanvas.js"],"names":["modules","__webpack_require__","moduleId","installedModules","exports","module","i","l","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","jQuery","__webpack_exports__","rtl","__WEBPACK_IMPORTED_MODULE_0_jquery___default","attr","GetYoDigits","length","namespace","Math","round","pow","random","toString","slice","transitionend","$elem","end","transitions","transition","WebkitTransition","MozTransition","OTransition","elem","document","createElement","t","style","setTimeout","triggerHandler","__WEBPACK_IMPORTED_MODULE_0_jquery__","__WEBPACK_IMPORTED_MODULE_1__foundation_core__","__WEBPACK_IMPORTED_MODULE_2__foundation_util_core__","__WEBPACK_IMPORTED_MODULE_3__foundation_plugin__","addToJquery","a","Plugin","window","Foundation","functionName","fn","undefined","Function","funcNameRegex","results","exec","trim","constructor","parseValue","str","isNaN","parseFloat","hyphenate","replace","toLowerCase","__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__","__WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__","FOUNDATION_VERSION","version","_plugins","_uuids","plugin","className","attrName","this","registerPlugin","pluginName","uuid","$element","data","trigger","push","unregisterPlugin","splice","indexOf","removeAttr","removeData","prop","reInit","plugins","isJQ","each","_init","type","_this","fns","plgs","forEach","foundation","string","keys","err","console","error","reflow","find","addBack","$el","opts","warn","split","e","opt","map","el","er","getFnName","$","method","$noJS","removeClass","TypeError","args","Array","arguments","plugClass","ReferenceError","apply","util","throttle","func","delay","timer","context","Date","now","getTime","vendors","requestAnimationFrame","vp","cancelAnimationFrame","test","navigator","userAgent","lastTime","callback","nextTime","max","clearTimeout","performance","start","bind","oThis","aArgs","fToBind","fNOP","fBound","concat","_classCallCheck","instance","Constructor","getPluginName","obj","_createClass","defineProperties","target","props","descriptor","writable","key","protoProps","staticProps","element","options","_setup","_destroy","parseStyleToObject","styleObject","reduce","ret","param","parts","val","decodeURIComponent","isArray","MediaQuery","matchMedia","styleMedia","media","script","getElementsByTagName","info","id","parentNode","insertBefore","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","width","matches","queries","current","self","$meta","appendTo","head","namedQueries","extractedStyles","css","_getCurrentSize","_watcher","atLeast","size","query","is","matched","off","on","newSize","currentSize","0","1","102","3","36","__WEBPACK_IMPORTED_MODULE_0__foundation_core__","__WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__","Keyboard","66","findFocusable","filter","parseKey","event","keyCodes","which","keyCode","String","fromCharCode","toUpperCase","shiftKey","ctrlKey","altKey","getKeyCodes","kcs","k","kc","9","13","27","32","35","37","38","39","40","commands","handleKey","component","functions","cmds","command","commandList","ltr","extend","returnValue","handled","unhandled","register","componentName","trapFocus","$focusable","$firstFocusable","eq","$lastFocusable","preventDefault","focus","releaseFocus","103","__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__","67","104","__WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__","Motion","Move","68","duration","move","ts","prog","anim","animate","isIn","animation","cb","finish","hide","reset","transitionDuration","initClass","activeClass","initClasses","activeClasses","addClass","show","offsetWidth","one","animateIn","animateOut","105","__WEBPACK_IMPORTED_MODULE_1__foundation_util_nest__","Nest","69","Feather","menu","items","role","subMenuClass","subItemClass","hasSubClass","applyAria","$item","$sub","children","data-submenu","aria-haspopup","aria-label","aria-expanded","aria-hidden","parent","Burn","Timer","nameSpace","remain","isPaused","restart","infinite","pause","onImagesLoaded","images","singleImageLoaded","unloaded","complete","readyState","src","108","4","42","__WEBPACK_IMPORTED_MODULE_1_jquery__","__WEBPACK_IMPORTED_MODULE_1_jquery___default","__WEBPACK_IMPORTED_MODULE_2__foundation_util_triggers__","init","7","debounceGlobalListener","debounce","listener","Triggers","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","pageYOffset","closest","elementObserver","observe","attributes","childList","characterData","subtree","attributeFilter","addSimpleListeners","$document","addGlobalListeners","triggersInitialized","IHearYou","14","__WEBPACK_IMPORTED_MODULE_1__foundation_accordion__","2","44","_possibleConstructorReturn","_inherits","subClass","superClass","create","setPrototypeOf","__proto__","Accordion","_Plugin","getPrototypeOf","defaults","ENTER","SPACE","ARROW_DOWN","ARROW_UP","_this3","$tabs","idx","$content","linkId","aria-controls","aria-selected","aria-labelledby","$initActive","firstTimeInit","down","_checkDeepLink","anchor","location","hash","$link","$anchor","hasClass","deepLinkSmudge","load","offset","scrollTop","top","deepLinkSmudgeDelay","deepLink","_events","$tabContent","toggle","next","$a","multiExpand","previous","prev","up","updateHistory","history","pushState","replaceState","firstTime","_this4","$currentActive","slideDown","slideSpeed","$aunts","siblings","allowAllClosed","slideUp","stop","5","80","15","__WEBPACK_IMPORTED_MODULE_1__foundation_accordionMenu__","45","AccordionMenu","__WEBPACK_IMPORTED_MODULE_2__foundation_util_nest__","__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__","__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__","ARROW_RIGHT","ARROW_LEFT","ESCAPE","aria-multiselectable","multiOpen","$menuLinks","subId","isActive","submenuToggle","after","submenuToggleText","initPanes","$submenu","$prevElement","$nextElement","$elements","first","min","parents","open","close","closeAll","hideAll","stopImmediatePropagation","parentsUntil","add","$menus","remove","81","10","19","__WEBPACK_IMPORTED_MODULE_1__foundation_equalizer__","49","Equalizer","__WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__","eqId","$watched","hasNested","isNested","body","isOn","_bindHandler","onResizeMeBound","_onResizeMe","onPostEqualizedBound","_onPostEqualized","tooSmall","imgs","equalizeOn","_checkMQ","_reflow",".zf.equalizer","resizeme.zf.trigger","mutateme.zf.trigger","_pauseEvents","equalizeOnStack","_isStacked","equalizeByRow","getHeightsByRow","applyHeightByRow","getHeights","applyHeight","getBoundingClientRect","heights","len","height","offsetHeight","lastElTopOffset","groups","group","elOffsetTop","j","ln","groupsILength","lenJ","6","85","22","__WEBPACK_IMPORTED_MODULE_1__foundation_offcanvas__","52","OffCanvas","__WEBPACK_IMPORTED_MODULE_5__foundation_util_triggers__","contentClasses","base","reveal","$lastTrigger","$triggers","position","nested","index","contentId","match","contentOverlay","overlay","overlayPosition","setAttribute","$overlay","insertAfter","append","isRevealed","RegExp","revealClass","revealOn","_setMQChecker","transitionTime","_removeContentClasses","open.zf.trigger","close.zf.trigger","toggle.zf.trigger","keydown.zf.offcanvas","_handleKeyboard","closeOnClick","click.zf.offcanvas","hasReveal","_addContentClasses","scrollHeight","clientHeight","allowUp","allowDown","lastY","originalEvent","pageY","forceTo","scrollTo","contentScroll","_stopScrolling","_recordScrollable","_stopScrollPropagation","autoFocus","canvasFocus","88"],"mappings":"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","file":"foundation.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 6);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return rtl; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return GetYoDigits; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return transitionend; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n\n\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 __WEBPACK_IMPORTED_MODULE_0_jquery___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(length, namespace) {\n length = length || 6;\n return Math.round(Math.pow(36, length + 1) - Math.random() * Math.pow(36, length)).toString(36).slice(1) + (namespace ? '-' + namespace : '');\n}\n\nfunction transitionend($elem) {\n var transitions = {\n 'transition': 'transitionend',\n 'WebkitTransition': 'webkitTransitionEnd',\n 'MozTransition': 'transitionend',\n 'OTransition': 'otransitionend'\n };\n var elem = document.createElement('div'),\n end;\n\n for (var t in transitions) {\n if (typeof elem.style[t] !== 'undefined') {\n end = transitions[t];\n }\n }\n if (end) {\n return end;\n } else {\n end = setTimeout(function () {\n $elem.triggerHandler('transitionend', [$elem]);\n }, 1);\n return 'transitionend';\n }\n}\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_plugin__ = __webpack_require__(4);\n\n\n\n__WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */].addToJquery(__WEBPACK_IMPORTED_MODULE_0_jquery___default.a);\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\n__WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */].rtl = __WEBPACK_IMPORTED_MODULE_2__foundation_util_core__[\"a\" /* rtl */];\n__WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */].GetYoDigits = __WEBPACK_IMPORTED_MODULE_2__foundation_util_core__[\"b\" /* GetYoDigits */];\n__WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */].transitionend = __WEBPACK_IMPORTED_MODULE_2__foundation_util_core__[\"c\" /* transitionend */];\n\n// Every plugin depends on plugin now, we can include that on the core for the\n// script inclusion path.\n\n\n__WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */].Plugin = __WEBPACK_IMPORTED_MODULE_3__foundation_plugin__[\"a\" /* Plugin */];\n\nwindow.Foundation = __WEBPACK_IMPORTED_MODULE_1__foundation_core__[\"a\" /* Foundation */];\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Foundation; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__ = __webpack_require__(5);\n\n\n\n\n\n\nvar FOUNDATION_VERSION = '6.4.3';\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 /**\n * Stores initialized plugins.\n */\n _plugins: {},\n\n /**\n * Stores generated unique ids for plugin instances\n */\n _uuids: [],\n\n /**\n * Defines a Foundation plugin, adding it to the `Foundation` namespace and the list of plugins to initialize when reflowing.\n * @param {Object} plugin - The constructor of the plugin.\n */\n plugin: function (plugin, 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 (plugin, name) {\n var pluginName = name ? hyphenate(name) : functionName(plugin.constructor).toLowerCase();\n plugin.uuid = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__[\"b\" /* GetYoDigits */])(6, pluginName);\n\n if (!plugin.$element.attr('data-' + pluginName)) {\n plugin.$element.attr('data-' + 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.' + pluginName);\n\n this._uuids.push(plugin.uuid);\n\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 (plugin) {\n var pluginName = hyphenate(functionName(plugin.$element.data('zfPlugin').constructor));\n\n this._uuids.splice(this._uuids.indexOf(plugin.uuid), 1);\n plugin.$element.removeAttr('data-' + pluginName).removeData('zfPlugin')\n /**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */\n .trigger('destroyed.zf.' + pluginName);\n for (var prop in plugin) {\n plugin[prop] = null; //clean up script to prep for garbage collection.\n }\n return;\n },\n\n /**\n * @function\n * Causes one or more active plugins to re-initialize, resetting event listeners, recalculating positions, etc.\n * @param {String} plugins - optional string of an individual plugin key, attained by calling `$(element).data('pluginName')`, or string of a plugin class i.e. `'dropdown'`\n * @default If no argument is passed, reflow all currently active plugins.\n */\n reInit: function (plugins) {\n var isJQ = plugins instanceof __WEBPACK_IMPORTED_MODULE_0_jquery___default.a;\n try {\n if (isJQ) {\n plugins.each(function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('zfPlugin')._init();\n });\n } else {\n var type = typeof plugins,\n _this = this,\n fns = {\n 'object': function (plgs) {\n plgs.forEach(function (p) {\n p = hyphenate(p);\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-' + p + ']').foundation('_init');\n });\n },\n 'string': function () {\n plugins = hyphenate(plugins);\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-' + plugins + ']').foundation('_init');\n },\n 'undefined': function () {\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 /**\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 (elem, plugins) {\n\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\n var _this = this;\n\n // Iterate through each plugin\n __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.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 = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(elem).find('[data-' + name + ']').addBack('[data-' + name + ']');\n\n // For each plugin found, initialize it\n $elem.each(function () {\n var $el = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this),\n opts = {};\n // Don't double-dip on plugins\n if ($el.data('zfPlugin')) {\n console.warn(\"Tried to initialize \" + name + \" on an element that already has a Foundation plugin.\");\n return;\n }\n\n if ($el.attr('data-options')) {\n var thing = $el.attr('data-options').split(';').forEach(function (e, i) {\n var opt = e.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(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), opts));\n } catch (er) {\n console.error(er);\n } finally {\n return;\n }\n });\n });\n },\n getFnName: functionName,\n\n addToJquery: function ($) {\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 (method) {\n var type = typeof method,\n $noJS = $('.no-js');\n\n if ($noJS.length) {\n $noJS.removeClass('no-js');\n }\n\n if (type === 'undefined') {\n //needs to initialize the Foundation object, or an individual plugin.\n __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__[\"a\" /* 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 (plugClass !== undefined && plugClass[method] !== undefined) {\n //make sure both the class and method exist\n if (this.length === 1) {\n //if there's only one, call it directly.\n plugClass[method].apply(plugClass, args);\n } else {\n this.each(function (i, el) {\n //otherwise loop through the jQuery collection and invoke the method on each\n plugClass[method].apply($(el).data('zfPlugin'), args);\n });\n }\n } else {\n //error for no class or no method\n throw new ReferenceError(\"We're sorry, '\" + method + \"' is not an available method for \" + (plugClass ? functionName(plugClass) : 'this element') + '.');\n }\n } else {\n //error for invalid argument type\n throw new TypeError('We\\'re sorry, ' + type + ' is not a valid parameter. You must use a string representing the method you wish to invoke.');\n }\n return this;\n };\n $.fn.foundation = foundation;\n return $;\n }\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 (func, delay) {\n var timer = null;\n\n return function () {\n var context = this,\n args = arguments;\n\n if (timer === null) {\n timer = setTimeout(function () {\n func.apply(context, args);\n timer = null;\n }, delay);\n }\n };\n }\n};\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\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 () {\n return Date.now() - this.start;\n }\n };\n }\n})();\nif (!Function.prototype.bind) {\n Function.prototype.bind = function (oThis) {\n if (typeof this !== 'function') {\n // closest thing possible to the ECMAScript 5\n // internal IsCallable function\n throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\n }\n\n var aArgs = Array.prototype.slice.call(arguments, 1),\n fToBind = this,\n fNOP = function () {},\n fBound = function () {\n return fToBind.apply(this instanceof fNOP ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments)));\n };\n\n if (this.prototype) {\n // native functions don't have a prototype\n fNOP.prototype = this.prototype;\n }\n fBound.prototype = new fNOP();\n\n return fBound;\n };\n}\n// Polyfill to get the name of a function in IE9\nfunction functionName(fn) {\n if (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 (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/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Plugin; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core__ = __webpack_require__(1);\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n\n\n\n// Abstract class for providing lifecycle hooks. Expect plugins to define AT LEAST\n// {function} _setup (replaces previous constructor),\n// {function} _destroy (replaces previous destroy)\n\nvar Plugin = function () {\n function Plugin(element, options) {\n _classCallCheck(this, Plugin);\n\n this._setup(element, options);\n var pluginName = getPluginName(this);\n this.uuid = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__[\"b\" /* GetYoDigits */])(6, pluginName);\n\n if (!this.$element.attr('data-' + pluginName)) {\n this.$element.attr('data-' + 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.' + pluginName);\n }\n\n _createClass(Plugin, [{\n key: 'destroy',\n value: function destroy() {\n this._destroy();\n var pluginName = getPluginName(this);\n this.$element.removeAttr('data-' + pluginName).removeData('zfPlugin')\n /**\n * Fires when the plugin has been destroyed.\n * @event Plugin#destroyed\n */\n .trigger('destroyed.zf.' + pluginName);\n for (var prop in this) {\n this[prop] = null; //clean up script to prep for garbage collection.\n }\n }\n }]);\n\n return Plugin;\n}();\n\n// Convert PascalCase to kebab-case\n// Thank you: http://stackoverflow.com/a/8955580\n\n\nfunction hyphenate(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nfunction getPluginName(obj) {\n if (typeof obj.constructor.name !== 'undefined') {\n return hyphenate(obj.constructor.name);\n } else {\n return hyphenate(obj.className);\n }\n}\n\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MediaQuery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n\n\n\n\n// Default set of media queries\nvar defaultQueries = {\n 'default': 'only screen',\n landscape: 'only screen and (orientation: landscape)',\n portrait: 'only screen and (orientation: portrait)',\n retina: 'only screen and (-webkit-min-device-pixel-ratio: 2),' + 'only screen and (min--moz-device-pixel-ratio: 2),' + 'only screen and (-o-min-device-pixel-ratio: 2/1),' + 'only screen and (min-device-pixel-ratio: 2),' + 'only screen and (min-resolution: 192dpi),' + 'only screen and (min-resolution: 2dppx)'\n};\n\n// matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license\nvar matchMedia = window.matchMedia || function () {\n 'use strict';\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n\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\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n script && script.parentNode && script.parentNode.insertBefore(style, script);\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\n styleMedia = {\n matchMedium: function (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\n return function (media) {\n return {\n matches: styleMedia.matchMedium(media || 'all'),\n media: media || 'all'\n };\n };\n}();\n\nvar MediaQuery = {\n queries: [],\n\n current: '',\n\n /**\n * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher.\n * @function\n * @private\n */\n _init: function () {\n var self = this;\n var $meta = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('meta.foundation-mq');\n if (!$meta.length) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('').appendTo(document.head);\n }\n\n var extractedStyles = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('.foundation-mq').css('font-family');\n var namedQueries;\n\n namedQueries = parseStyleToObject(extractedStyles);\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: ' + namedQueries[key] + ')'\n });\n }\n }\n\n this.current = this._getCurrentSize();\n\n this._watcher();\n },\n\n\n /**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */\n atLeast: function (size) {\n var query = this.get(size);\n\n if (query) {\n return matchMedia(query).matches;\n }\n\n return false;\n },\n\n\n /**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */\n is: function (size) {\n size = size.trim().split(' ');\n if (size.length > 1 && size[1] === 'only') {\n if (size[0] === this._getCurrentSize()) return true;\n } else {\n return this.atLeast(size[0]);\n }\n return false;\n },\n\n\n /**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */\n get: function (size) {\n for (var i in this.queries) {\n if (this.queries.hasOwnProperty(i)) {\n var query = this.queries[i];\n if (size === query.name) return query.value;\n }\n }\n\n return null;\n },\n\n\n /**\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 () {\n var matched;\n\n for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n\n if (matchMedia(query.value).matches) {\n matched = query;\n }\n }\n\n if (typeof matched === 'object') {\n return matched.name;\n } else {\n return matched;\n }\n },\n\n\n /**\n * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes.\n * @function\n * @private\n */\n _watcher: function () {\n var _this = this;\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', function () {\n var newSize = _this._getCurrentSize(),\n currentSize = _this.current;\n\n if (newSize !== currentSize) {\n // Change the current media query\n _this.current = newSize;\n\n // Broadcast the media query change on the window\n __WEBPACK_IMPORTED_MODULE_0_jquery___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\n if (typeof str !== 'string') {\n return styleObject;\n }\n\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\n }\n\n styleObject = str.split('&').reduce(function (ret, param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = parts[0];\n var val = parts[1];\n key = decodeURIComponent(key);\n\n // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n val = val === undefined ? null : decodeURIComponent(val);\n\n if (!ret.hasOwnProperty(key)) {\n ret[key] = val;\n } else if (Array.isArray(ret[key])) {\n ret[key].push(val);\n } else {\n ret[key] = [ret[key], val];\n }\n return ret;\n }, {});\n\n return styleObject;\n}\n\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(2);\n\n\n/***/ })\n/******/ ]);","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 102);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 102:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(36);\n\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 36:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__ = __webpack_require__(66);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].Keyboard = __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"a\" /* Keyboard */];\n\n/***/ }),\n\n/***/ 66:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Keyboard; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__);\n/*******************************************\n * *\n * This util was created by Marius Olbertz *\n * Please thank Marius on GitHub /owlbertz *\n * or the web http://www.mariusolbertz.de/ *\n * *\n ******************************************/\n\n\n\n\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};\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 (!__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).is(':visible') || __WEBPACK_IMPORTED_MODULE_0_jquery___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 });\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\n if (event.shiftKey) key = 'SHIFT_' + key;\n if (event.ctrlKey) key = 'CTRL_' + key;\n if (event.altKey) key = 'ALT_' + key;\n\n // Remove trailing underscore, in case only modifiers were used (e.g. only `CTRL_ALT`)\n key = key.replace(/_$/, '');\n\n return key;\n}\n\nvar Keyboard = {\n keys: getKeyCodes(keyCodes),\n\n /**\n * Parses the (keyboard) event and returns a String that represents its key\n * Can be used like Foundation.parseKey(event) === Foundation.keys.SPACE\n * @param {Event} event - the event generated by the event handler\n * @return String key - String that represents the key pressed\n */\n parseKey: parseKey,\n\n /**\n * Handles the given (keyboard) event\n * @param {Event} event - the event generated by the event handler\n * @param {String} component - Foundation component's name, e.g. Slider or Reveal\n * @param {Objects} functions - collection of functions that are to be executed\n */\n handleKey: function (event, component, functions) {\n var commandList = commands[component],\n keyCode = this.parseKey(event),\n cmds,\n command,\n fn;\n\n if (!commandList) return console.warn('Component not defined!');\n\n if (typeof commandList.ltr === 'undefined') {\n // this component does not differentiate between ltr and rtl\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 (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__[\"rtl\"])()) cmds = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, commandList.ltr, commandList.rtl);else cmds = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, commandList.rtl, commandList.ltr);\n }\n command = cmds[keyCode];\n\n fn = functions[command];\n if (fn && typeof fn === 'function') {\n // execute function if exists\n var returnValue = fn.apply();\n if (functions.handled || typeof functions.handled === 'function') {\n // execute function when event was handled\n functions.handled(returnValue);\n }\n } else {\n if (functions.unhandled || typeof functions.unhandled === 'function') {\n // execute function when event was not handled\n functions.unhandled();\n }\n }\n },\n\n\n /**\n * Finds all focusable elements within the given `$element`\n * @param {jQuery} $element - jQuery object to search within\n * @return {jQuery} $focusable - all focusable elements within `$element`\n */\n\n findFocusable: findFocusable,\n\n /**\n * Returns the component name name\n * @param {Object} component - Foundation component, e.g. Slider or Reveal\n * @return String componentName\n */\n\n register: function (componentName, cmds) {\n commands[componentName] = cmds;\n },\n\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 ($element) {\n var $focusable = findFocusable($element),\n $firstFocusable = $focusable.eq(0),\n $lastFocusable = $focusable.eq(-1);\n\n $element.on('keydown.zf.trapfocus', function (event) {\n if (event.target === $lastFocusable[0] && parseKey(event) === 'TAB') {\n event.preventDefault();\n $firstFocusable.focus();\n } else if (event.target === $firstFocusable[0] && parseKey(event) === 'SHIFT_TAB') {\n event.preventDefault();\n $lastFocusable.focus();\n }\n });\n },\n\n /**\n * Releases the trapped focus from the given element.\n * @param {jQuery} $element jQuery object to release the focus for.\n */\n releaseFocus: function ($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 k[kcs[kc]] = kcs[kc];\n }return k;\n}\n\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 103);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 103:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(37);\n\n\n/***/ }),\n\n/***/ 37:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__ = __webpack_require__(67);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].MediaQuery = __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__[\"a\" /* MediaQuery */];\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].MediaQuery._init();\n\n/***/ }),\n\n/***/ 67:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MediaQuery; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n\n\n\n\n// Default set of media queries\nvar defaultQueries = {\n 'default': 'only screen',\n landscape: 'only screen and (orientation: landscape)',\n portrait: 'only screen and (orientation: portrait)',\n retina: 'only screen and (-webkit-min-device-pixel-ratio: 2),' + 'only screen and (min--moz-device-pixel-ratio: 2),' + 'only screen and (-o-min-device-pixel-ratio: 2/1),' + 'only screen and (min-device-pixel-ratio: 2),' + 'only screen and (min-resolution: 192dpi),' + 'only screen and (min-resolution: 2dppx)'\n};\n\n// matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. Dual MIT/BSD license\nvar matchMedia = window.matchMedia || function () {\n 'use strict';\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n\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\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n script && script.parentNode && script.parentNode.insertBefore(style, script);\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\n styleMedia = {\n matchMedium: function (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\n return function (media) {\n return {\n matches: styleMedia.matchMedium(media || 'all'),\n media: media || 'all'\n };\n };\n}();\n\nvar MediaQuery = {\n queries: [],\n\n current: '',\n\n /**\n * Initializes the media query helper, by extracting the breakpoint list from the CSS and activating the breakpoint watcher.\n * @function\n * @private\n */\n _init: function () {\n var self = this;\n var $meta = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('meta.foundation-mq');\n if (!$meta.length) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('').appendTo(document.head);\n }\n\n var extractedStyles = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('.foundation-mq').css('font-family');\n var namedQueries;\n\n namedQueries = parseStyleToObject(extractedStyles);\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: ' + namedQueries[key] + ')'\n });\n }\n }\n\n this.current = this._getCurrentSize();\n\n this._watcher();\n },\n\n\n /**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */\n atLeast: function (size) {\n var query = this.get(size);\n\n if (query) {\n return matchMedia(query).matches;\n }\n\n return false;\n },\n\n\n /**\n * Checks if the screen matches to a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check, either 'small only' or 'small'. Omitting 'only' falls back to using atLeast() method.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it does not.\n */\n is: function (size) {\n size = size.trim().split(' ');\n if (size.length > 1 && size[1] === 'only') {\n if (size[0] === this._getCurrentSize()) return true;\n } else {\n return this.atLeast(size[0]);\n }\n return false;\n },\n\n\n /**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */\n get: function (size) {\n for (var i in this.queries) {\n if (this.queries.hasOwnProperty(i)) {\n var query = this.queries[i];\n if (size === query.name) return query.value;\n }\n }\n\n return null;\n },\n\n\n /**\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 () {\n var matched;\n\n for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n\n if (matchMedia(query.value).matches) {\n matched = query;\n }\n }\n\n if (typeof matched === 'object') {\n return matched.name;\n } else {\n return matched;\n }\n },\n\n\n /**\n * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes.\n * @function\n * @private\n */\n _watcher: function () {\n var _this = this;\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', function () {\n var newSize = _this._getCurrentSize(),\n currentSize = _this.current;\n\n if (newSize !== currentSize) {\n // Change the current media query\n _this.current = newSize;\n\n // Broadcast the media query change on the window\n __WEBPACK_IMPORTED_MODULE_0_jquery___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\n if (typeof str !== 'string') {\n return styleObject;\n }\n\n str = str.trim().slice(1, -1); // browsers re-quote string style values\n\n if (!str) {\n return styleObject;\n }\n\n styleObject = str.split('&').reduce(function (ret, param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = parts[0];\n var val = parts[1];\n key = decodeURIComponent(key);\n\n // missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n val = val === undefined ? null : decodeURIComponent(val);\n\n if (!ret.hasOwnProperty(key)) {\n ret[key] = val;\n } else if (Array.isArray(ret[key])) {\n ret[key].push(val);\n } else {\n ret[key] = [ret[key], val];\n }\n return ret;\n }, {});\n\n return styleObject;\n}\n\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 104);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 104:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(38);\n\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 38:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__ = __webpack_require__(68);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].Motion = __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__[\"a\" /* Motion */];\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].Move = __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__[\"b\" /* Move */];\n\n/***/ }),\n\n/***/ 68:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return Move; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Motion; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__);\n\n\n\n\n\n/**\n * Motion module.\n * @module foundation.motion\n */\n\nvar initClasses = ['mui-enter', 'mui-leave'];\nvar activeClasses = ['mui-enter-active', 'mui-leave-active'];\n\nvar Motion = {\n animateIn: function (element, animation, cb) {\n animate(true, element, animation, cb);\n },\n\n animateOut: function (element, animation, cb) {\n animate(false, element, animation, cb);\n }\n};\n\nfunction Move(duration, elem, fn) {\n var anim,\n prog,\n start = null;\n // console.log('called');\n\n if (duration === 0) {\n fn.apply(elem);\n elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]);\n return;\n }\n\n function move(ts) {\n if (!start) start = ts;\n // console.log(start, ts);\n prog = ts - start;\n fn.apply(elem);\n\n if (prog < duration) {\n anim = window.requestAnimationFrame(move, elem);\n } else {\n window.cancelAnimationFrame(anim);\n elem.trigger('finished.zf.animate', [elem]).triggerHandler('finished.zf.animate', [elem]);\n }\n }\n anim = window.requestAnimationFrame(move);\n}\n\n/**\n * Animates an element in or out using a CSS transition class.\n * @function\n * @private\n * @param {Boolean} isIn - Defines if the animation is in or out.\n * @param {Object} element - jQuery or HTML object to animate.\n * @param {String} animation - CSS class to use.\n * @param {Function} cb - Callback to run when animation is finished.\n */\nfunction animate(isIn, element, animation, cb) {\n element = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(element).eq(0);\n\n if (!element.length) return;\n\n var initClass = isIn ? initClasses[0] : initClasses[1];\n var activeClass = isIn ? activeClasses[0] : activeClasses[1];\n\n // Set up the animation\n reset();\n\n element.addClass(animation).css('transition', 'none');\n\n requestAnimationFrame(function () {\n element.addClass(initClass);\n if (isIn) element.show();\n });\n\n // Start the animation\n requestAnimationFrame(function () {\n element[0].offsetWidth;\n element.css('transition', '').addClass(activeClass);\n });\n\n // Clean up the animation when it finishes\n element.one(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__foundation_util_core__[\"transitionend\"])(element), finish);\n\n // Hides the element (for out animations), resets the element, and runs a callback\n function finish() {\n if (!isIn) element.hide();\n reset();\n if (cb) cb.apply(element);\n }\n\n // Resets transitions and removes motion-specific classes\n function reset() {\n element[0].style.transitionDuration = 0;\n element.removeClass(initClass + ' ' + activeClass + ' ' + animation);\n }\n}\n\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 105);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 105:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(39);\n\n\n/***/ }),\n\n/***/ 39:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_nest__ = __webpack_require__(69);\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].Nest = __WEBPACK_IMPORTED_MODULE_1__foundation_util_nest__[\"a\" /* Nest */];\n\n/***/ }),\n\n/***/ 69:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Nest; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n\n\n\n\nvar Nest = {\n Feather: function (menu) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'zf';\n\n menu.attr('role', 'menubar');\n\n var items = menu.find('li').attr({ 'role': 'menuitem' }),\n subMenuClass = 'is-' + type + '-submenu',\n subItemClass = subMenuClass + '-item',\n hasSubClass = 'is-' + type + '-submenu-parent',\n applyAria = type !== 'accordion'; // Accordions handle their own ARIA attriutes.\n\n items.each(function () {\n var $item = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this),\n $sub = $item.children('ul');\n\n if ($sub.length) {\n $item.addClass(hasSubClass);\n $sub.addClass('submenu ' + subMenuClass).attr({ 'data-submenu': '' });\n if (applyAria) {\n $item.attr({\n 'aria-haspopup': true,\n 'aria-label': $item.children('a:first').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({ 'aria-expanded': false });\n }\n }\n $sub.addClass('submenu ' + subMenuClass).attr({\n 'data-submenu': '',\n 'role': 'menu'\n });\n if (type === 'drilldown') {\n $sub.attr({ 'aria-hidden': true });\n }\n }\n\n if ($item.parent('[data-submenu]').length) {\n $item.addClass('is-submenu-item ' + subItemClass);\n }\n });\n\n return;\n },\n Burn: function (menu, type) {\n var //items = menu.find('li'),\n subMenuClass = 'is-' + type + '-submenu',\n subItemClass = subMenuClass + '-item',\n hasSubClass = 'is-' + type + '-submenu-parent';\n\n menu.find('>li, .menu, .menu > li').removeClass(subMenuClass + ' ' + subItemClass + ' ' + hasSubClass + ' is-submenu-item submenu is-active').removeAttr('data-submenu').css('display', '');\n }\n};\n\n\n\n/***/ })\n\n/******/ });","'use strict';\n\n!function ($) {\n\n function Timer(elem, options, cb) {\n var _this = this,\n duration = options.duration,\n //options is an object for easily adding features later.\n nameSpace = Object.keys(elem.data())[0] || 'timer',\n remain = -1,\n start,\n timer;\n\n this.isPaused = false;\n\n this.restart = function () {\n remain = -1;\n clearTimeout(timer);\n this.start();\n };\n\n this.start = function () {\n this.isPaused = false;\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 if (cb && typeof cb === 'function') {\n cb();\n }\n }, remain);\n elem.trigger('timerstart.zf.' + nameSpace);\n };\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.' + nameSpace);\n };\n }\n\n /**\n * Runs a callback function when images are fully loaded.\n * @param {Object} images - Image(s) to check if loaded.\n * @param {Func} callback - Function to execute when image is fully loaded.\n */\n function onImagesLoaded(images, callback) {\n var self = this,\n unloaded = images.length;\n\n if (unloaded === 0) {\n callback();\n }\n\n images.each(function () {\n // Check if image is loaded\n if (this.complete || this.readyState === 4 || this.readyState === 'complete') {\n singleImageLoaded();\n }\n // Force load the image\n else {\n // fix for IE. See https://css-tricks.com/snippets/jquery/fixing-load-in-ie-for-cached-images/\n var src = $(this).attr('src');\n $(this).attr('src', src + (src.indexOf('?') >= 0 ? '&' : '?') + new Date().getTime());\n $(this).one('load', function () {\n singleImageLoaded();\n });\n }\n });\n\n function singleImageLoaded() {\n unloaded--;\n if (unloaded === 0) {\n callback();\n }\n }\n }\n\n Foundation.Timer = Timer;\n Foundation.onImagesLoaded = onImagesLoaded;\n}(jQuery);","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 108);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 108:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(42);\n\n\n/***/ }),\n\n/***/ 4:\n/***/ (function(module, exports) {\n\nmodule.exports = {Motion: window.Foundation.Motion, Move: window.Foundation.Move};\n\n/***/ }),\n\n/***/ 42:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_triggers__ = __webpack_require__(7);\n\n\n\n\n__WEBPACK_IMPORTED_MODULE_2__foundation_util_triggers__[\"a\" /* Triggers */].init(__WEBPACK_IMPORTED_MODULE_1_jquery___default.a, __WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"]);\n\n/***/ }),\n\n/***/ 7:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Triggers; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__);\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n for (var i = 0; i < prefixes.length; i++) {\n if (prefixes[i] + 'MutationObserver' in window) {\n return window[prefixes[i] + 'MutationObserver'];\n }\n }\n return false;\n}();\n\nvar triggers = function (el, type) {\n el.data(type).split(' ').forEach(function (id) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id)[type === 'close' ? 'trigger' : 'triggerHandler'](type + '.zf.trigger', [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\n\nTriggers.Listeners.Basic = {\n openListener: function () {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'open');\n },\n closeListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('close');\n if (id) {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'close');\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle');\n if (id) {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'toggle');\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function (e) {\n e.stopPropagation();\n var animation = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('closable');\n\n if (animation !== '') {\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__[\"Motion\"].animateOut(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), animation, function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('closed.zf');\n });\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle-focus');\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id).triggerHandler('toggle.zf.trigger', [__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this)]);\n }\n};\n\n// Elements with [data-open] will reveal a plugin that supports it when clicked.\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n};\n\n// Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n};\n\n// Elements with [data-toggle] will toggle a plugin that supports it when clicked.\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n};\n\n// Elements with [data-closable] will respond to close.zf.trigger events.\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n};\n\n// Elements with [data-toggle-focus] will respond to coming in and out of focus\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n};\n\n// More Global/complex listeners and triggers\nTriggers.Listeners.Global = {\n resizeListener: function ($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a resize event\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function ($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a scroll event\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function (e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-' + plugin + ']').not('[data-yeti-box=\"' + pluginId + '\"]');\n\n plugins.each(function () {\n var _this = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this);\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n }\n\n // Global, parses whole document.\n};Triggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (typeof pluginName === 'object' && typeof pluginName[0] === 'string') {\n plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return 'closeme.zf.' + name;\n }).join(' ');\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer = void 0,\n args = Array.prototype.slice.call(arguments, 3);\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-resize]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-scroll]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');\n\n //element callback\n var listeningElementsMutation = function (mutationRecordsList) {\n var $target = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(mutationRecordsList[0].target);\n\n //trigger the event handler for the element depending on type\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], { attributes: true, childList: true, characterData: false, subtree: true, attributeFilter: [\"data-events\", \"style\"] });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);\n\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n if (typeof $.triggersInitialized === 'undefined') {\n var $document = $(document);\n\n if (document.readyState === \"complete\") {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n } else {\n $(window).on('load', function () {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n });\n }\n\n $.triggersInitialized = true;\n }\n\n if (Foundation) {\n Foundation.Triggers = Triggers;\n // Legacy included to be backwards compatible for now.\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 80);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 14:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_accordion__ = __webpack_require__(44);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_accordion__[\"a\" /* Accordion */], 'Accordion');\n\n/***/ }),\n\n/***/ 2:\n/***/ (function(module, exports) {\n\nmodule.exports = {Plugin: window.Foundation.Plugin};\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 44:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Accordion; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_plugin__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_plugin__);\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n\n/**\n * Accordion module.\n * @module foundation.accordion\n * @requires foundation.util.keyboard\n */\n\nvar Accordion = function (_Plugin) {\n _inherits(Accordion, _Plugin);\n\n function Accordion() {\n _classCallCheck(this, Accordion);\n\n return _possibleConstructorReturn(this, (Accordion.__proto__ || Object.getPrototypeOf(Accordion)).apply(this, arguments));\n }\n\n _createClass(Accordion, [{\n key: '_setup',\n\n /**\n * Creates a new instance of an accordion.\n * @class\n * @name Accordion\n * @fires Accordion#init\n * @param {jQuery} element - jQuery object to make into an accordion.\n * @param {Object} options - a plain object with settings to override the default options.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, Accordion.defaults, this.$element.data(), options);\n\n this.className = 'Accordion'; // ie9 back compat\n this._init();\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].register('Accordion', {\n 'ENTER': 'toggle',\n 'SPACE': 'toggle',\n 'ARROW_DOWN': 'next',\n 'ARROW_UP': 'previous'\n });\n }\n\n /**\n * Initializes the accordion by animating the preset active pane(s).\n * @private\n */\n\n }, {\n key: '_init',\n value: function _init() {\n var _this3 = this;\n\n this.$element.attr('role', 'tablist');\n this.$tabs = this.$element.children('[data-accordion-item]');\n\n this.$tabs.each(function (idx, el) {\n var $el = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(el),\n $content = $el.children('[data-tab-content]'),\n id = $content[0].id || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__foundation_util_core__[\"GetYoDigits\"])(6, 'accordion'),\n linkId = el.id || id + '-label';\n\n $el.find('a:first').attr({\n 'aria-controls': id,\n 'role': 'tab',\n 'id': linkId,\n 'aria-expanded': false,\n 'aria-selected': false\n });\n\n $content.attr({ 'role': 'tabpanel', 'aria-labelledby': linkId, 'aria-hidden': true, 'id': id });\n });\n var $initActive = this.$element.find('.is-active').children('[data-tab-content]');\n this.firstTimeInit = true;\n if ($initActive.length) {\n this.down($initActive, this.firstTimeInit);\n this.firstTimeInit = false;\n }\n\n this._checkDeepLink = function () {\n var anchor = window.location.hash;\n //need a hash and a relevant anchor in this tabset\n if (anchor.length) {\n var $link = _this3.$element.find('[href$=\"' + anchor + '\"]'),\n $anchor = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(anchor);\n\n if ($link.length && $anchor) {\n if (!$link.parent('[data-accordion-item]').hasClass('is-active')) {\n _this3.down($anchor, _this3.firstTimeInit);\n _this3.firstTimeInit = false;\n };\n\n //roll up a little to show the titles\n if (_this3.options.deepLinkSmudge) {\n var _this = _this3;\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).load(function () {\n var offset = _this.$element.offset();\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('html, body').animate({ scrollTop: offset.top }, _this.options.deepLinkSmudgeDelay);\n });\n }\n\n /**\n * Fires when the zplugin has deeplinked at pageload\n * @event Accordion#deeplink\n */\n _this3.$element.trigger('deeplink.zf.accordion', [$link, $anchor]);\n }\n }\n };\n\n //use browser to open a tab, if it exists in this tabset\n if (this.options.deepLink) {\n this._checkDeepLink();\n }\n\n this._events();\n }\n\n /**\n * Adds event handlers for items within the accordion.\n * @private\n */\n\n }, {\n key: '_events',\n value: function _events() {\n var _this = this;\n\n this.$tabs.each(function () {\n var $elem = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this);\n var $tabContent = $elem.children('[data-tab-content]');\n if ($tabContent.length) {\n $elem.children('a').off('click.zf.accordion keydown.zf.accordion').on('click.zf.accordion', function (e) {\n e.preventDefault();\n _this.toggle($tabContent);\n }).on('keydown.zf.accordion', function (e) {\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].handleKey(e, 'Accordion', {\n toggle: function () {\n _this.toggle($tabContent);\n },\n next: function () {\n var $a = $elem.next().find('a').focus();\n if (!_this.options.multiExpand) {\n $a.trigger('click.zf.accordion');\n }\n },\n previous: function () {\n var $a = $elem.prev().find('a').focus();\n if (!_this.options.multiExpand) {\n $a.trigger('click.zf.accordion');\n }\n },\n handled: function () {\n e.preventDefault();\n e.stopPropagation();\n }\n });\n });\n }\n });\n if (this.options.deepLink) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('popstate', this._checkDeepLink);\n }\n }\n\n /**\n * Toggles the selected content pane's open/close state.\n * @param {jQuery} $target - jQuery object of the pane to toggle (`.accordion-content`).\n * @function\n */\n\n }, {\n key: 'toggle',\n value: function toggle($target) {\n if ($target.closest('[data-accordion]').is('[disabled]')) {\n console.info('Cannot toggle an accordion that is disabled.');\n return;\n }\n if ($target.parent().hasClass('is-active')) {\n this.up($target);\n } else {\n this.down($target);\n }\n //either replace or update browser history\n if (this.options.deepLink) {\n var anchor = $target.prev('a').attr('href');\n\n if (this.options.updateHistory) {\n history.pushState({}, '', anchor);\n } else {\n history.replaceState({}, '', anchor);\n }\n }\n }\n\n /**\n * Opens the accordion tab defined by `$target`.\n * @param {jQuery} $target - Accordion pane to open (`.accordion-content`).\n * @param {Boolean} firstTime - flag to determine if reflow should happen.\n * @fires Accordion#down\n * @function\n */\n\n }, {\n key: 'down',\n value: function down($target, firstTime) {\n var _this4 = this;\n\n /**\n * checking firstTime allows for initial render of the accordion\n * to render preset is-active panes.\n */\n if ($target.closest('[data-accordion]').is('[disabled]') && !firstTime) {\n console.info('Cannot call down on an accordion that is disabled.');\n return;\n }\n $target.attr('aria-hidden', false).parent('[data-tab-content]').addBack().parent().addClass('is-active');\n\n if (!this.options.multiExpand && !firstTime) {\n var $currentActive = this.$element.children('.is-active').children('[data-tab-content]');\n if ($currentActive.length) {\n this.up($currentActive.not($target));\n }\n }\n\n $target.slideDown(this.options.slideSpeed, function () {\n /**\n * Fires when the tab is done opening.\n * @event Accordion#down\n */\n _this4.$element.trigger('down.zf.accordion', [$target]);\n });\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + $target.attr('aria-labelledby')).attr({\n 'aria-expanded': true,\n 'aria-selected': true\n });\n }\n\n /**\n * Closes the tab defined by `$target`.\n * @param {jQuery} $target - Accordion tab to close (`.accordion-content`).\n * @fires Accordion#up\n * @function\n */\n\n }, {\n key: 'up',\n value: function up($target) {\n if ($target.closest('[data-accordion]').is('[disabled]')) {\n console.info('Cannot call up on an accordion that is disabled.');\n return;\n }\n\n var $aunts = $target.parent().siblings(),\n _this = this;\n\n if (!this.options.allowAllClosed && !$aunts.hasClass('is-active') || !$target.parent().hasClass('is-active')) {\n return;\n }\n\n $target.slideUp(_this.options.slideSpeed, function () {\n /**\n * Fires when the tab is done collapsing up.\n * @event Accordion#up\n */\n _this.$element.trigger('up.zf.accordion', [$target]);\n });\n\n $target.attr('aria-hidden', true).parent().removeClass('is-active');\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + $target.attr('aria-labelledby')).attr({\n 'aria-expanded': false,\n 'aria-selected': false\n });\n }\n\n /**\n * Destroys an instance of an accordion.\n * @fires Accordion#destroyed\n * @function\n */\n\n }, {\n key: '_destroy',\n value: function _destroy() {\n this.$element.find('[data-tab-content]').stop(true).slideUp(0).css('display', '');\n this.$element.find('a').off('.zf.accordion');\n if (this.options.deepLink) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off('popstate', this._checkDeepLink);\n }\n }\n }]);\n\n return Accordion;\n}(__WEBPACK_IMPORTED_MODULE_3__foundation_plugin__[\"Plugin\"]);\n\nAccordion.defaults = {\n /**\n * Amount of time to animate the opening of an accordion pane.\n * @option\n * @type {number}\n * @default 250\n */\n slideSpeed: 250,\n /**\n * Allow the accordion to have multiple open panes.\n * @option\n * @type {boolean}\n * @default false\n */\n multiExpand: false,\n /**\n * Allow the accordion to close all panes.\n * @option\n * @type {boolean}\n * @default false\n */\n allowAllClosed: false,\n /**\n * Allows the window to scroll to content of pane specified by hash anchor\n * @option\n * @type {boolean}\n * @default false\n */\n deepLink: false,\n\n /**\n * Adjust the deep link scroll to make sure the top of the accordion panel is visible\n * @option\n * @type {boolean}\n * @default false\n */\n deepLinkSmudge: false,\n\n /**\n * Animation time (ms) for the deep link adjustment\n * @option\n * @type {number}\n * @default 300\n */\n deepLinkSmudgeDelay: 300,\n\n /**\n * Update the browser history with the open accordion\n * @option\n * @type {boolean}\n * @default false\n */\n updateHistory: false\n};\n\n\n\n/***/ }),\n\n/***/ 5:\n/***/ (function(module, exports) {\n\nmodule.exports = {Keyboard: window.Foundation.Keyboard};\n\n/***/ }),\n\n/***/ 80:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(14);\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 81);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 15:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_accordionMenu__ = __webpack_require__(45);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_accordionMenu__[\"a\" /* AccordionMenu */], 'AccordionMenu');\n\n/***/ }),\n\n/***/ 2:\n/***/ (function(module, exports) {\n\nmodule.exports = {Plugin: window.Foundation.Plugin};\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 45:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return AccordionMenu; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_nest__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_nest___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_nest__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__);\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n\n\n/**\n * AccordionMenu module.\n * @module foundation.accordionMenu\n * @requires foundation.util.keyboard\n * @requires foundation.util.nest\n */\n\nvar AccordionMenu = function (_Plugin) {\n _inherits(AccordionMenu, _Plugin);\n\n function AccordionMenu() {\n _classCallCheck(this, AccordionMenu);\n\n return _possibleConstructorReturn(this, (AccordionMenu.__proto__ || Object.getPrototypeOf(AccordionMenu)).apply(this, arguments));\n }\n\n _createClass(AccordionMenu, [{\n key: '_setup',\n\n /**\n * Creates a new instance of an accordion menu.\n * @class\n * @name AccordionMenu\n * @fires AccordionMenu#init\n * @param {jQuery} element - jQuery object to make into an accordion menu.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, AccordionMenu.defaults, this.$element.data(), options);\n this.className = 'AccordionMenu'; // ie9 back compat\n\n this._init();\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].register('AccordionMenu', {\n 'ENTER': 'toggle',\n 'SPACE': 'toggle',\n 'ARROW_RIGHT': 'open',\n 'ARROW_UP': 'up',\n 'ARROW_DOWN': 'down',\n 'ARROW_LEFT': 'close',\n 'ESCAPE': 'closeAll'\n });\n }\n\n /**\n * Initializes the accordion menu by hiding all nested menus.\n * @private\n */\n\n }, {\n key: '_init',\n value: function _init() {\n __WEBPACK_IMPORTED_MODULE_2__foundation_util_nest__[\"Nest\"].Feather(this.$element, 'accordion');\n\n var _this = this;\n\n this.$element.find('[data-submenu]').not('.is-active').slideUp(0); //.find('a').css('padding-left', '1rem');\n this.$element.attr({\n 'role': 'tree',\n 'aria-multiselectable': this.options.multiOpen\n });\n\n this.$menuLinks = this.$element.find('.is-accordion-submenu-parent');\n this.$menuLinks.each(function () {\n var linkId = this.id || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"GetYoDigits\"])(6, 'acc-menu-link'),\n $elem = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this),\n $sub = $elem.children('[data-submenu]'),\n subId = $sub[0].id || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"GetYoDigits\"])(6, 'acc-menu'),\n isActive = $sub.hasClass('is-active');\n\n if (_this.options.submenuToggle) {\n $elem.addClass('has-submenu-toggle');\n $elem.children('a').after('');\n } else {\n $elem.attr({\n 'aria-controls': subId,\n 'aria-expanded': isActive,\n 'id': linkId\n });\n }\n $sub.attr({\n 'aria-labelledby': linkId,\n 'aria-hidden': !isActive,\n 'role': 'group',\n 'id': subId\n });\n });\n this.$element.find('li').attr({\n 'role': 'treeitem'\n });\n var initPanes = this.$element.find('.is-active');\n if (initPanes.length) {\n var _this = this;\n initPanes.each(function () {\n _this.down(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this));\n });\n }\n this._events();\n }\n\n /**\n * Adds event handlers for items within the menu.\n * @private\n */\n\n }, {\n key: '_events',\n value: function _events() {\n var _this = this;\n\n this.$element.find('li').each(function () {\n var $submenu = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).children('[data-submenu]');\n\n if ($submenu.length) {\n if (_this.options.submenuToggle) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).children('.submenu-toggle').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e) {\n _this.toggle($submenu);\n });\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).children('a').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e) {\n e.preventDefault();\n _this.toggle($submenu);\n });\n }\n }\n }).on('keydown.zf.accordionmenu', function (e) {\n var $element = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this),\n $elements = $element.parent('ul').children('li'),\n $prevElement,\n $nextElement,\n $target = $element.children('[data-submenu]');\n\n $elements.each(function (i) {\n if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).is($element)) {\n $prevElement = $elements.eq(Math.max(0, i - 1)).find('a').first();\n $nextElement = $elements.eq(Math.min(i + 1, $elements.length - 1)).find('a').first();\n\n if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).children('[data-submenu]:visible').length) {\n // has open sub menu\n $nextElement = $element.find('li:first-child').find('a').first();\n }\n if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).is(':first-child')) {\n // is first element of sub menu\n $prevElement = $element.parents('li').first().find('a').first();\n } else if ($prevElement.parents('li').first().children('[data-submenu]:visible').length) {\n // if previous element has open sub menu\n $prevElement = $prevElement.parents('li').find('li:last-child').find('a').first();\n }\n if (__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).is(':last-child')) {\n // is last element of sub menu\n $nextElement = $element.parents('li').first().next('li').find('a').first();\n }\n\n return;\n }\n });\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].handleKey(e, 'AccordionMenu', {\n open: function () {\n if ($target.is(':hidden')) {\n _this.down($target);\n $target.find('li').first().find('a').first().focus();\n }\n },\n close: function () {\n if ($target.length && !$target.is(':hidden')) {\n // close active sub of this item\n _this.up($target);\n } else if ($element.parent('[data-submenu]').length) {\n // close currently open sub\n _this.up($element.parent('[data-submenu]'));\n $element.parents('li').first().find('a').first().focus();\n }\n },\n up: function () {\n $prevElement.focus();\n return true;\n },\n down: function () {\n $nextElement.focus();\n return true;\n },\n toggle: function () {\n if (_this.options.submenuToggle) {\n return false;\n }\n if ($element.children('[data-submenu]').length) {\n _this.toggle($element.children('[data-submenu]'));\n return true;\n }\n },\n closeAll: function () {\n _this.hideAll();\n },\n handled: function (preventDefault) {\n if (preventDefault) {\n e.preventDefault();\n }\n e.stopImmediatePropagation();\n }\n });\n }); //.attr('tabindex', 0);\n }\n\n /**\n * Closes all panes of the menu.\n * @function\n */\n\n }, {\n key: 'hideAll',\n value: function hideAll() {\n this.up(this.$element.find('[data-submenu]'));\n }\n\n /**\n * Opens all panes of the menu.\n * @function\n */\n\n }, {\n key: 'showAll',\n value: function showAll() {\n this.down(this.$element.find('[data-submenu]'));\n }\n\n /**\n * Toggles the open/close state of a submenu.\n * @function\n * @param {jQuery} $target - the submenu to toggle\n */\n\n }, {\n key: 'toggle',\n value: function toggle($target) {\n if (!$target.is(':animated')) {\n if (!$target.is(':hidden')) {\n this.up($target);\n } else {\n this.down($target);\n }\n }\n }\n\n /**\n * Opens the sub-menu defined by `$target`.\n * @param {jQuery} $target - Sub-menu to open.\n * @fires AccordionMenu#down\n */\n\n }, {\n key: 'down',\n value: function down($target) {\n var _this = this;\n\n if (!this.options.multiOpen) {\n this.up(this.$element.find('.is-active').not($target.parentsUntil(this.$element).add($target)));\n }\n\n $target.addClass('is-active').attr({ 'aria-hidden': false });\n\n if (this.options.submenuToggle) {\n $target.prev('.submenu-toggle').attr({ 'aria-expanded': true });\n } else {\n $target.parent('.is-accordion-submenu-parent').attr({ 'aria-expanded': true });\n }\n\n $target.slideDown(_this.options.slideSpeed, function () {\n /**\n * Fires when the menu is done opening.\n * @event AccordionMenu#down\n */\n _this.$element.trigger('down.zf.accordionMenu', [$target]);\n });\n }\n\n /**\n * Closes the sub-menu defined by `$target`. All sub-menus inside the target will be closed as well.\n * @param {jQuery} $target - Sub-menu to close.\n * @fires AccordionMenu#up\n */\n\n }, {\n key: 'up',\n value: function up($target) {\n var _this = this;\n $target.slideUp(_this.options.slideSpeed, function () {\n /**\n * Fires when the menu is done collapsing up.\n * @event AccordionMenu#up\n */\n _this.$element.trigger('up.zf.accordionMenu', [$target]);\n });\n\n var $menus = $target.find('[data-submenu]').slideUp(0).addBack().attr('aria-hidden', true);\n\n if (this.options.submenuToggle) {\n $menus.prev('.submenu-toggle').attr('aria-expanded', false);\n } else {\n $menus.parent('.is-accordion-submenu-parent').attr('aria-expanded', false);\n }\n }\n\n /**\n * Destroys an instance of accordion menu.\n * @fires AccordionMenu#destroyed\n */\n\n }, {\n key: '_destroy',\n value: function _destroy() {\n this.$element.find('[data-submenu]').slideDown(0).css('display', '');\n this.$element.find('a').off('click.zf.accordionMenu');\n\n if (this.options.submenuToggle) {\n this.$element.find('.has-submenu-toggle').removeClass('has-submenu-toggle');\n this.$element.find('.submenu-toggle').remove();\n }\n\n __WEBPACK_IMPORTED_MODULE_2__foundation_util_nest__[\"Nest\"].Burn(this.$element, 'accordion');\n }\n }]);\n\n return AccordionMenu;\n}(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__[\"Plugin\"]);\n\nAccordionMenu.defaults = {\n /**\n * Amount of time to animate the opening of a submenu in ms.\n * @option\n * @type {number}\n * @default 250\n */\n slideSpeed: 250,\n /**\n * Adds a separate submenu toggle button. This allows the parent item to have a link.\n * @option\n * @example true\n */\n submenuToggle: false,\n /**\n * The text used for the submenu toggle if enabled. This is used for screen readers only.\n * @option\n * @example true\n */\n submenuToggleText: 'Toggle menu',\n /**\n * Allow the menu to have multiple open panes.\n * @option\n * @type {boolean}\n * @default true\n */\n multiOpen: true\n};\n\n\n\n/***/ }),\n\n/***/ 5:\n/***/ (function(module, exports) {\n\nmodule.exports = {Keyboard: window.Foundation.Keyboard};\n\n/***/ }),\n\n/***/ 81:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(15);\n\n\n/***/ }),\n\n/***/ 9:\n/***/ (function(module, exports) {\n\nmodule.exports = {Nest: window.Foundation.Nest};\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 85);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 10:\n/***/ (function(module, exports) {\n\nmodule.exports = {onImagesLoaded: window.Foundation.onImagesLoaded};\n\n/***/ }),\n\n/***/ 19:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_equalizer__ = __webpack_require__(49);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_equalizer__[\"a\" /* Equalizer */], 'Equalizer');\n\n/***/ }),\n\n/***/ 2:\n/***/ (function(module, exports) {\n\nmodule.exports = {Plugin: window.Foundation.Plugin};\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 49:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Equalizer; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__);\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n\n\n/**\n * Equalizer module.\n * @module foundation.equalizer\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.imageLoader if equalizer contains images\n */\n\nvar Equalizer = function (_Plugin) {\n _inherits(Equalizer, _Plugin);\n\n function Equalizer() {\n _classCallCheck(this, Equalizer);\n\n return _possibleConstructorReturn(this, (Equalizer.__proto__ || Object.getPrototypeOf(Equalizer)).apply(this, arguments));\n }\n\n _createClass(Equalizer, [{\n key: '_setup',\n\n /**\n * Creates a new instance of Equalizer.\n * @class\n * @name Equalizer\n * @fires Equalizer#init\n * @param {Object} element - jQuery object to add the trigger to.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n this.$element = element;\n this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, Equalizer.defaults, this.$element.data(), options);\n this.className = 'Equalizer'; // ie9 back compat\n\n this._init();\n }\n\n /**\n * Initializes the Equalizer plugin and calls functions to get equalizer functioning on load.\n * @private\n */\n\n }, {\n key: '_init',\n value: function _init() {\n var eqId = this.$element.attr('data-equalizer') || '';\n var $watched = this.$element.find('[data-equalizer-watch=\"' + eqId + '\"]');\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__[\"MediaQuery\"]._init();\n\n this.$watched = $watched.length ? $watched : this.$element.find('[data-equalizer-watch]');\n this.$element.attr('data-resize', eqId || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"GetYoDigits\"])(6, 'eq'));\n this.$element.attr('data-mutate', eqId || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"GetYoDigits\"])(6, 'eq'));\n\n this.hasNested = this.$element.find('[data-equalizer]').length > 0;\n this.isNested = this.$element.parentsUntil(document.body, '[data-equalizer]').length > 0;\n this.isOn = false;\n this._bindHandler = {\n onResizeMeBound: this._onResizeMe.bind(this),\n onPostEqualizedBound: this._onPostEqualized.bind(this)\n };\n\n var imgs = this.$element.find('img');\n var tooSmall;\n if (this.options.equalizeOn) {\n tooSmall = this._checkMQ();\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('changed.zf.mediaquery', this._checkMQ.bind(this));\n } else {\n this._events();\n }\n if (tooSmall !== undefined && tooSmall === false || tooSmall === undefined) {\n if (imgs.length) {\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__foundation_util_imageLoader__[\"onImagesLoaded\"])(imgs, this._reflow.bind(this));\n } else {\n this._reflow();\n }\n }\n }\n\n /**\n * Removes event listeners if the breakpoint is too small.\n * @private\n */\n\n }, {\n key: '_pauseEvents',\n value: function _pauseEvents() {\n this.isOn = false;\n this.$element.off({\n '.zf.equalizer': this._bindHandler.onPostEqualizedBound,\n 'resizeme.zf.trigger': this._bindHandler.onResizeMeBound,\n 'mutateme.zf.trigger': this._bindHandler.onResizeMeBound\n });\n }\n\n /**\n * function to handle $elements resizeme.zf.trigger, with bound this on _bindHandler.onResizeMeBound\n * @private\n */\n\n }, {\n key: '_onResizeMe',\n value: function _onResizeMe(e) {\n this._reflow();\n }\n\n /**\n * function to handle $elements postequalized.zf.equalizer, with bound this on _bindHandler.onPostEqualizedBound\n * @private\n */\n\n }, {\n key: '_onPostEqualized',\n value: function _onPostEqualized(e) {\n if (e.target !== this.$element[0]) {\n this._reflow();\n }\n }\n\n /**\n * Initializes events for Equalizer.\n * @private\n */\n\n }, {\n key: '_events',\n value: function _events() {\n var _this = this;\n this._pauseEvents();\n if (this.hasNested) {\n this.$element.on('postequalized.zf.equalizer', this._bindHandler.onPostEqualizedBound);\n } else {\n this.$element.on('resizeme.zf.trigger', this._bindHandler.onResizeMeBound);\n this.$element.on('mutateme.zf.trigger', this._bindHandler.onResizeMeBound);\n }\n this.isOn = true;\n }\n\n /**\n * Checks the current breakpoint to the minimum required size.\n * @private\n */\n\n }, {\n key: '_checkMQ',\n value: function _checkMQ() {\n var tooSmall = !__WEBPACK_IMPORTED_MODULE_1__foundation_util_mediaQuery__[\"MediaQuery\"].is(this.options.equalizeOn);\n if (tooSmall) {\n if (this.isOn) {\n this._pauseEvents();\n this.$watched.css('height', 'auto');\n }\n } else {\n if (!this.isOn) {\n this._events();\n }\n }\n return tooSmall;\n }\n\n /**\n * A noop version for the plugin\n * @private\n */\n\n }, {\n key: '_killswitch',\n value: function _killswitch() {\n return;\n }\n\n /**\n * Calls necessary functions to update Equalizer upon DOM change\n * @private\n */\n\n }, {\n key: '_reflow',\n value: function _reflow() {\n if (!this.options.equalizeOnStack) {\n if (this._isStacked()) {\n this.$watched.css('height', 'auto');\n return false;\n }\n }\n if (this.options.equalizeByRow) {\n this.getHeightsByRow(this.applyHeightByRow.bind(this));\n } else {\n this.getHeights(this.applyHeight.bind(this));\n }\n }\n\n /**\n * Manually determines if the first 2 elements are *NOT* stacked.\n * @private\n */\n\n }, {\n key: '_isStacked',\n value: function _isStacked() {\n if (!this.$watched[0] || !this.$watched[1]) {\n return true;\n }\n return this.$watched[0].getBoundingClientRect().top !== this.$watched[1].getBoundingClientRect().top;\n }\n\n /**\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 */\n\n }, {\n key: 'getHeights',\n value: function getHeights(cb) {\n var heights = [];\n for (var i = 0, len = this.$watched.length; i < len; i++) {\n this.$watched[i].style.height = 'auto';\n heights.push(this.$watched[i].offsetHeight);\n }\n cb(heights);\n }\n\n /**\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} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child\n */\n\n }, {\n key: 'getHeightsByRow',\n value: function getHeightsByRow(cb) {\n var lastElTopOffset = this.$watched.length ? this.$watched.first().offset().top : 0,\n groups = [],\n group = 0;\n //group by Row\n groups[group] = [];\n for (var i = 0, len = this.$watched.length; i < len; i++) {\n this.$watched[i].style.height = 'auto';\n //maybe could use this.$watched[i].offsetTop\n var elOffsetTop = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.$watched[i]).offset().top;\n if (elOffsetTop != lastElTopOffset) {\n group++;\n groups[group] = [];\n lastElTopOffset = elOffsetTop;\n }\n groups[group].push([this.$watched[i], this.$watched[i].offsetHeight]);\n }\n\n for (var j = 0, ln = groups.length; j < ln; j++) {\n var heights = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[j]).map(function () {\n return this[1];\n }).get();\n var max = Math.max.apply(null, heights);\n groups[j].push(max);\n }\n cb(groups);\n }\n\n /**\n * Changes the CSS height property of each child in an Equalizer parent to match the tallest\n * @param {array} heights - An array of heights of children within Equalizer container\n * @fires Equalizer#preequalized\n * @fires Equalizer#postequalized\n */\n\n }, {\n key: 'applyHeight',\n value: function applyHeight(heights) {\n var max = Math.max.apply(null, heights);\n /**\n * Fires before the heights are applied\n * @event Equalizer#preequalized\n */\n this.$element.trigger('preequalized.zf.equalizer');\n\n this.$watched.css('height', max);\n\n /**\n * Fires when the heights have been applied\n * @event Equalizer#postequalized\n */\n this.$element.trigger('postequalized.zf.equalizer');\n }\n\n /**\n * Changes the CSS height property of each child in an Equalizer parent to match the tallest by row\n * @param {array} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child\n * @fires Equalizer#preequalized\n * @fires Equalizer#preequalizedrow\n * @fires Equalizer#postequalizedrow\n * @fires Equalizer#postequalized\n */\n\n }, {\n key: 'applyHeightByRow',\n value: function applyHeightByRow(groups) {\n /**\n * Fires before the heights are applied\n */\n this.$element.trigger('preequalized.zf.equalizer');\n for (var i = 0, len = groups.length; i < len; i++) {\n var groupsILength = groups[i].length,\n max = groups[i][groupsILength - 1];\n if (groupsILength <= 2) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[i][0][0]).css({ 'height': 'auto' });\n continue;\n }\n /**\n * Fires before the heights per row are applied\n * @event Equalizer#preequalizedrow\n */\n this.$element.trigger('preequalizedrow.zf.equalizer');\n for (var j = 0, lenJ = groupsILength - 1; j < lenJ; j++) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(groups[i][j][0]).css({ 'height': max });\n }\n /**\n * Fires when the heights per row have been applied\n * @event Equalizer#postequalizedrow\n */\n this.$element.trigger('postequalizedrow.zf.equalizer');\n }\n /**\n * Fires when the heights have been applied\n */\n this.$element.trigger('postequalized.zf.equalizer');\n }\n\n /**\n * Destroys an instance of Equalizer.\n * @function\n */\n\n }, {\n key: '_destroy',\n value: function _destroy() {\n this._pauseEvents();\n this.$watched.css('height', 'auto');\n }\n }]);\n\n return Equalizer;\n}(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__[\"Plugin\"]);\n\n/**\n * Default settings for plugin\n */\n\n\nEqualizer.defaults = {\n /**\n * Enable height equalization when stacked on smaller screens.\n * @option\n * @type {boolean}\n * @default false\n */\n equalizeOnStack: false,\n /**\n * Enable height equalization row by row.\n * @option\n * @type {boolean}\n * @default false\n */\n equalizeByRow: false,\n /**\n * String representing the minimum breakpoint size the plugin should equalize heights on.\n * @option\n * @type {string}\n * @default ''\n */\n equalizeOn: ''\n};\n\n\n\n/***/ }),\n\n/***/ 6:\n/***/ (function(module, exports) {\n\nmodule.exports = {MediaQuery: window.Foundation.MediaQuery};\n\n/***/ }),\n\n/***/ 85:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(19);\n\n\n/***/ })\n\n/******/ });","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 88);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ 0:\n/***/ (function(module, exports) {\n\nmodule.exports = jQuery;\n\n/***/ }),\n\n/***/ 1:\n/***/ (function(module, exports) {\n\nmodule.exports = {Foundation: window.Foundation};\n\n/***/ }),\n\n/***/ 2:\n/***/ (function(module, exports) {\n\nmodule.exports = {Plugin: window.Foundation.Plugin};\n\n/***/ }),\n\n/***/ 22:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__foundation_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__foundation_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_offcanvas__ = __webpack_require__(52);\n\n\n\n__WEBPACK_IMPORTED_MODULE_0__foundation_core__[\"Foundation\"].plugin(__WEBPACK_IMPORTED_MODULE_1__foundation_offcanvas__[\"a\" /* OffCanvas */], 'OffCanvas');\n\n/***/ }),\n\n/***/ 3:\n/***/ (function(module, exports) {\n\nmodule.exports = {rtl: window.Foundation.rtl, GetYoDigits: window.Foundation.GetYoDigits, transitionend: window.Foundation.transitionend};\n\n/***/ }),\n\n/***/ 4:\n/***/ (function(module, exports) {\n\nmodule.exports = {Motion: window.Foundation.Motion, Move: window.Foundation.Move};\n\n/***/ }),\n\n/***/ 5:\n/***/ (function(module, exports) {\n\nmodule.exports = {Keyboard: window.Foundation.Keyboard};\n\n/***/ }),\n\n/***/ 52:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return OffCanvas; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__foundation_util_core___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__foundation_plugin___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__foundation_util_triggers__ = __webpack_require__(7);\n\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\n\n\n\n\n\n\n/**\n * OffCanvas module.\n * @module foundation.offcanvas\n * @requires foundation.util.keyboard\n * @requires foundation.util.mediaQuery\n * @requires foundation.util.triggers\n */\n\nvar OffCanvas = function (_Plugin) {\n _inherits(OffCanvas, _Plugin);\n\n function OffCanvas() {\n _classCallCheck(this, OffCanvas);\n\n return _possibleConstructorReturn(this, (OffCanvas.__proto__ || Object.getPrototypeOf(OffCanvas)).apply(this, arguments));\n }\n\n _createClass(OffCanvas, [{\n key: '_setup',\n\n /**\n * Creates a new instance of an off-canvas wrapper.\n * @class\n * @name OffCanvas\n * @fires OffCanvas#init\n * @param {Object} element - jQuery object to initialize.\n * @param {Object} options - Overrides to the default plugin settings.\n */\n value: function _setup(element, options) {\n var _this3 = this;\n\n this.className = 'OffCanvas'; // ie9 back compat\n this.$element = element;\n this.options = __WEBPACK_IMPORTED_MODULE_0_jquery___default.a.extend({}, OffCanvas.defaults, this.$element.data(), options);\n this.contentClasses = { base: [], reveal: [] };\n this.$lastTrigger = __WEBPACK_IMPORTED_MODULE_0_jquery___default()();\n this.$triggers = __WEBPACK_IMPORTED_MODULE_0_jquery___default()();\n this.position = 'left';\n this.$content = __WEBPACK_IMPORTED_MODULE_0_jquery___default()();\n this.nested = !!this.options.nested;\n\n // Defines the CSS transition/position classes of the off-canvas content container.\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(['push', 'overlap']).each(function (index, val) {\n _this3.contentClasses.base.push('has-transition-' + val);\n });\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(['left', 'right', 'top', 'bottom']).each(function (index, val) {\n _this3.contentClasses.base.push('has-position-' + val);\n _this3.contentClasses.reveal.push('has-reveal-' + val);\n });\n\n // Triggers init is idempotent, just need to make sure it is initialized\n __WEBPACK_IMPORTED_MODULE_5__foundation_util_triggers__[\"a\" /* Triggers */].init(__WEBPACK_IMPORTED_MODULE_0_jquery___default.a);\n __WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__[\"MediaQuery\"]._init();\n\n this._init();\n this._events();\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].register('OffCanvas', {\n 'ESCAPE': 'close'\n });\n }\n\n /**\n * Initializes the off-canvas wrapper by adding the exit overlay (if needed).\n * @function\n * @private\n */\n\n }, {\n key: '_init',\n value: function _init() {\n var id = this.$element.attr('id');\n\n this.$element.attr('aria-hidden', 'true');\n\n // Find off-canvas content, either by ID (if specified), by siblings or by closest selector (fallback)\n if (this.options.contentId) {\n this.$content = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + this.options.contentId);\n } else if (this.$element.siblings('[data-off-canvas-content]').length) {\n this.$content = this.$element.siblings('[data-off-canvas-content]').first();\n } else {\n this.$content = this.$element.closest('[data-off-canvas-content]').first();\n }\n\n if (!this.options.contentId) {\n // Assume that the off-canvas element is nested if it isn't a sibling of the content\n this.nested = this.$element.siblings('[data-off-canvas-content]').length === 0;\n } else if (this.options.contentId && this.options.nested === null) {\n // Warning if using content ID without setting the nested option\n // Once the element is nested it is required to work properly in this case\n console.warn('Remember to use the nested option if using the content ID option!');\n }\n\n if (this.nested === true) {\n // Force transition overlap if nested\n this.options.transition = 'overlap';\n // Remove appropriate classes if already assigned in markup\n this.$element.removeClass('is-transition-push');\n }\n\n this.$element.addClass('is-transition-' + this.options.transition + ' is-closed');\n\n // Find triggers that affect this element and add aria-expanded to them\n this.$triggers = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document).find('[data-open=\"' + id + '\"], [data-close=\"' + id + '\"], [data-toggle=\"' + id + '\"]').attr('aria-expanded', 'false').attr('aria-controls', id);\n\n // Get position by checking for related CSS class\n this.position = this.$element.is('.position-left, .position-top, .position-right, .position-bottom') ? this.$element.attr('class').match(/position\\-(left|top|right|bottom)/)[1] : this.position;\n\n // Add an overlay over the content if necessary\n if (this.options.contentOverlay === true) {\n var overlay = document.createElement('div');\n var overlayPosition = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.$element).css(\"position\") === 'fixed' ? 'is-overlay-fixed' : 'is-overlay-absolute';\n overlay.setAttribute('class', 'js-off-canvas-overlay ' + overlayPosition);\n this.$overlay = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(overlay);\n if (overlayPosition === 'is-overlay-fixed') {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this.$overlay).insertAfter(this.$element);\n } else {\n this.$content.append(this.$overlay);\n }\n }\n\n this.options.isRevealed = this.options.isRevealed || new RegExp(this.options.revealClass, 'g').test(this.$element[0].className);\n\n if (this.options.isRevealed === true) {\n this.options.revealOn = this.options.revealOn || this.$element[0].className.match(/(reveal-for-medium|reveal-for-large)/g)[0].split('-')[2];\n this._setMQChecker();\n }\n\n if (this.options.transitionTime) {\n this.$element.css('transition-duration', this.options.transitionTime);\n }\n\n // Initally remove all transition/position CSS classes from off-canvas content container.\n this._removeContentClasses();\n }\n\n /**\n * Adds event handlers to the off-canvas wrapper and the exit overlay.\n * @function\n * @private\n */\n\n }, {\n key: '_events',\n value: function _events() {\n this.$element.off('.zf.trigger .zf.offcanvas').on({\n 'open.zf.trigger': this.open.bind(this),\n 'close.zf.trigger': this.close.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this),\n 'keydown.zf.offcanvas': this._handleKeyboard.bind(this)\n });\n\n if (this.options.closeOnClick === true) {\n var $target = this.options.contentOverlay ? this.$overlay : this.$content;\n $target.on({ 'click.zf.offcanvas': this.close.bind(this) });\n }\n }\n\n /**\n * Applies event listener for elements that will reveal at certain breakpoints.\n * @private\n */\n\n }, {\n key: '_setMQChecker',\n value: function _setMQChecker() {\n var _this = this;\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).on('changed.zf.mediaquery', function () {\n if (__WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__[\"MediaQuery\"].atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n } else {\n _this.reveal(false);\n }\n }).one('load.zf.offcanvas', function () {\n if (__WEBPACK_IMPORTED_MODULE_2__foundation_util_mediaQuery__[\"MediaQuery\"].atLeast(_this.options.revealOn)) {\n _this.reveal(true);\n }\n });\n }\n\n /**\n * Removes the CSS transition/position classes of the off-canvas content container.\n * Removing the classes is important when another off-canvas gets opened that uses the same content container.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n\n }, {\n key: '_removeContentClasses',\n value: function _removeContentClasses(hasReveal) {\n if (typeof hasReveal !== 'boolean') {\n this.$content.removeClass(this.contentClasses.base.join(' '));\n } else if (hasReveal === false) {\n this.$content.removeClass('has-reveal-' + this.position);\n }\n }\n\n /**\n * Adds the CSS transition/position classes of the off-canvas content container, based on the opening off-canvas element.\n * Beforehand any transition/position class gets removed.\n * @param {Boolean} hasReveal - true if related off-canvas element is revealed.\n * @private\n */\n\n }, {\n key: '_addContentClasses',\n value: function _addContentClasses(hasReveal) {\n this._removeContentClasses(hasReveal);\n if (typeof hasReveal !== 'boolean') {\n this.$content.addClass('has-transition-' + this.options.transition + ' has-position-' + this.position);\n } else if (hasReveal === true) {\n this.$content.addClass('has-reveal-' + this.position);\n }\n }\n\n /**\n * Handles the revealing/hiding the off-canvas at breakpoints, not the same as open.\n * @param {Boolean} isRevealed - true if element should be revealed.\n * @function\n */\n\n }, {\n key: 'reveal',\n value: function reveal(isRevealed) {\n if (isRevealed) {\n this.close();\n this.isRevealed = true;\n this.$element.attr('aria-hidden', 'false');\n this.$element.off('open.zf.trigger toggle.zf.trigger');\n this.$element.removeClass('is-closed');\n } else {\n this.isRevealed = false;\n this.$element.attr('aria-hidden', 'true');\n this.$element.off('open.zf.trigger toggle.zf.trigger').on({\n 'open.zf.trigger': this.open.bind(this),\n 'toggle.zf.trigger': this.toggle.bind(this)\n });\n this.$element.addClass('is-closed');\n }\n this._addContentClasses(isRevealed);\n }\n\n /**\n * Stops scrolling of the body when offcanvas is open on mobile Safari and other troublesome browsers.\n * @private\n */\n\n }, {\n key: '_stopScrolling',\n value: function _stopScrolling(event) {\n return false;\n }\n\n // Taken and adapted from http://stackoverflow.com/questions/16889447/prevent-full-page-scrolling-ios\n // Only really works for y, not sure how to extend to x or if we need to.\n\n }, {\n key: '_recordScrollable',\n value: function _recordScrollable(event) {\n var elem = this; // called from event handler context with this as elem\n\n // If the element is scrollable (content overflows), then...\n if (elem.scrollHeight !== elem.clientHeight) {\n // If we're at the top, scroll down one pixel to allow scrolling up\n if (elem.scrollTop === 0) {\n elem.scrollTop = 1;\n }\n // If we're at the bottom, scroll up one pixel to allow scrolling down\n if (elem.scrollTop === elem.scrollHeight - elem.clientHeight) {\n elem.scrollTop = elem.scrollHeight - elem.clientHeight - 1;\n }\n }\n elem.allowUp = elem.scrollTop > 0;\n elem.allowDown = elem.scrollTop < elem.scrollHeight - elem.clientHeight;\n elem.lastY = event.originalEvent.pageY;\n }\n }, {\n key: '_stopScrollPropagation',\n value: function _stopScrollPropagation(event) {\n var elem = this; // called from event handler context with this as elem\n var up = event.pageY < elem.lastY;\n var down = !up;\n elem.lastY = event.pageY;\n\n if (up && elem.allowUp || down && elem.allowDown) {\n event.stopPropagation();\n } else {\n event.preventDefault();\n }\n }\n\n /**\n * Opens the off-canvas menu.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n * @fires OffCanvas#opened\n */\n\n }, {\n key: 'open',\n value: function open(event, trigger) {\n if (this.$element.hasClass('is-open') || this.isRevealed) {\n return;\n }\n var _this = this;\n\n if (trigger) {\n this.$lastTrigger = trigger;\n }\n\n if (this.options.forceTo === 'top') {\n window.scrollTo(0, 0);\n } else if (this.options.forceTo === 'bottom') {\n window.scrollTo(0, document.body.scrollHeight);\n }\n\n if (this.options.transitionTime && this.options.transition !== 'overlap') {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', this.options.transitionTime);\n } else {\n this.$element.siblings('[data-off-canvas-content]').css('transition-duration', '');\n }\n\n /**\n * Fires when the off-canvas menu opens.\n * @event OffCanvas#opened\n */\n this.$element.addClass('is-open').removeClass('is-closed');\n\n this.$triggers.attr('aria-expanded', 'true');\n this.$element.attr('aria-hidden', 'false').trigger('opened.zf.offcanvas');\n\n this.$content.addClass('is-open-' + this.position);\n\n // If `contentScroll` is set to false, add class and disable scrolling on touch devices.\n if (this.options.contentScroll === false) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').addClass('is-off-canvas-open').on('touchmove', this._stopScrolling);\n this.$element.on('touchstart', this._recordScrollable);\n this.$element.on('touchmove', this._stopScrollPropagation);\n }\n\n if (this.options.contentOverlay === true) {\n this.$overlay.addClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.addClass('is-closable');\n }\n\n if (this.options.autoFocus === true) {\n this.$element.one(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"transitionend\"])(this.$element), function () {\n if (!_this.$element.hasClass('is-open')) {\n return; // exit if prematurely closed\n }\n var canvasFocus = _this.$element.find('[data-autofocus]');\n if (canvasFocus.length) {\n canvasFocus.eq(0).focus();\n } else {\n _this.$element.find('a, button').eq(0).focus();\n }\n });\n }\n\n if (this.options.trapFocus === true) {\n this.$content.attr('tabindex', '-1');\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].trapFocus(this.$element);\n }\n\n this._addContentClasses();\n }\n\n /**\n * Closes the off-canvas menu.\n * @function\n * @param {Function} cb - optional cb to fire after closure.\n * @fires OffCanvas#closed\n */\n\n }, {\n key: 'close',\n value: function close(cb) {\n if (!this.$element.hasClass('is-open') || this.isRevealed) {\n return;\n }\n\n var _this = this;\n\n this.$element.removeClass('is-open');\n\n this.$element.attr('aria-hidden', 'true')\n /**\n * Fires when the off-canvas menu opens.\n * @event OffCanvas#closed\n */\n .trigger('closed.zf.offcanvas');\n\n this.$content.removeClass('is-open-left is-open-top is-open-right is-open-bottom');\n\n // If `contentScroll` is set to false, remove class and re-enable scrolling on touch devices.\n if (this.options.contentScroll === false) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('body').removeClass('is-off-canvas-open').off('touchmove', this._stopScrolling);\n this.$element.off('touchstart', this._recordScrollable);\n this.$element.off('touchmove', this._stopScrollPropagation);\n }\n\n if (this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-visible');\n }\n\n if (this.options.closeOnClick === true && this.options.contentOverlay === true) {\n this.$overlay.removeClass('is-closable');\n }\n\n this.$triggers.attr('aria-expanded', 'false');\n\n if (this.options.trapFocus === true) {\n this.$content.removeAttr('tabindex');\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].releaseFocus(this.$element);\n }\n\n // Listen to transitionEnd and add class when done.\n this.$element.one(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__foundation_util_core__[\"transitionend\"])(this.$element), function (e) {\n _this.$element.addClass('is-closed');\n _this._removeContentClasses();\n });\n }\n\n /**\n * Toggles the off-canvas menu open or closed.\n * @function\n * @param {Object} event - Event object passed from listener.\n * @param {jQuery} trigger - element that triggered the off-canvas to open.\n */\n\n }, {\n key: 'toggle',\n value: function toggle(event, trigger) {\n if (this.$element.hasClass('is-open')) {\n this.close(event, trigger);\n } else {\n this.open(event, trigger);\n }\n }\n\n /**\n * Handles keyboard input when detected. When the escape key is pressed, the off-canvas menu closes, and focus is restored to the element that opened the menu.\n * @function\n * @private\n */\n\n }, {\n key: '_handleKeyboard',\n value: function _handleKeyboard(e) {\n var _this4 = this;\n\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_keyboard__[\"Keyboard\"].handleKey(e, 'OffCanvas', {\n close: function () {\n _this4.close();\n _this4.$lastTrigger.focus();\n return true;\n },\n handled: function () {\n e.stopPropagation();\n e.preventDefault();\n }\n });\n }\n\n /**\n * Destroys the offcanvas plugin.\n * @function\n */\n\n }, {\n key: '_destroy',\n value: function _destroy() {\n this.close();\n this.$element.off('.zf.trigger .zf.offcanvas');\n this.$overlay.off('.zf.offcanvas');\n }\n }]);\n\n return OffCanvas;\n}(__WEBPACK_IMPORTED_MODULE_4__foundation_plugin__[\"Plugin\"]);\n\nOffCanvas.defaults = {\n /**\n * Allow the user to click outside of the menu to close it.\n * @option\n * @type {boolean}\n * @default true\n */\n closeOnClick: true,\n\n /**\n * Adds an overlay on top of `[data-off-canvas-content]`.\n * @option\n * @type {boolean}\n * @default true\n */\n contentOverlay: true,\n\n /**\n * Target an off-canvas content container by ID that may be placed anywhere. If null the closest content container will be taken.\n * @option\n * @type {?string}\n * @default null\n */\n contentId: null,\n\n /**\n * Define the off-canvas element is nested in an off-canvas content. This is required when using the contentId option for a nested element.\n * @option\n * @type {boolean}\n * @default null\n */\n nested: null,\n\n /**\n * Enable/disable scrolling of the main content when an off canvas panel is open.\n * @option\n * @type {boolean}\n * @default true\n */\n contentScroll: true,\n\n /**\n * Amount of time in ms the open and close transition requires. If none selected, pulls from body style.\n * @option\n * @type {number}\n * @default null\n */\n transitionTime: null,\n\n /**\n * Type of transition for the offcanvas menu. Options are 'push', 'detached' or 'slide'.\n * @option\n * @type {string}\n * @default push\n */\n transition: 'push',\n\n /**\n * Force the page to scroll to top or bottom on open.\n * @option\n * @type {?string}\n * @default null\n */\n forceTo: null,\n\n /**\n * Allow the offcanvas to remain open for certain breakpoints.\n * @option\n * @type {boolean}\n * @default false\n */\n isRevealed: false,\n\n /**\n * Breakpoint at which to reveal. JS will use a RegExp to target standard classes, if changing classnames, pass your class with the `revealClass` option.\n * @option\n * @type {?string}\n * @default null\n */\n revealOn: null,\n\n /**\n * Force focus to the offcanvas on open. If true, will focus the opening trigger on close.\n * @option\n * @type {boolean}\n * @default true\n */\n autoFocus: true,\n\n /**\n * Class used to force an offcanvas to remain open. Foundation defaults for this are `reveal-for-large` & `reveal-for-medium`.\n * @option\n * @type {string}\n * @default reveal-for-\n * @todo improve the regex testing for this.\n */\n revealClass: 'reveal-for-',\n\n /**\n * Triggers optional focus trapping when opening an offcanvas. Sets tabindex of [data-off-canvas-content] to -1 for accessibility purposes.\n * @option\n * @type {boolean}\n * @default false\n */\n trapFocus: false\n};\n\n\n\n/***/ }),\n\n/***/ 6:\n/***/ (function(module, exports) {\n\nmodule.exports = {MediaQuery: window.Foundation.MediaQuery};\n\n/***/ }),\n\n/***/ 7:\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return Triggers; });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery__ = __webpack_require__(0);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_jquery___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_jquery__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__);\n\n\n\n\n\nvar MutationObserver = function () {\n var prefixes = ['WebKit', 'Moz', 'O', 'Ms', ''];\n for (var i = 0; i < prefixes.length; i++) {\n if (prefixes[i] + 'MutationObserver' in window) {\n return window[prefixes[i] + 'MutationObserver'];\n }\n }\n return false;\n}();\n\nvar triggers = function (el, type) {\n el.data(type).split(' ').forEach(function (id) {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id)[type === 'close' ? 'trigger' : 'triggerHandler'](type + '.zf.trigger', [el]);\n });\n};\n\nvar Triggers = {\n Listeners: {\n Basic: {},\n Global: {}\n },\n Initializers: {}\n};\n\nTriggers.Listeners.Basic = {\n openListener: function () {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'open');\n },\n closeListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('close');\n if (id) {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'close');\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('close.zf.trigger');\n }\n },\n toggleListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle');\n if (id) {\n triggers(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), 'toggle');\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('toggle.zf.trigger');\n }\n },\n closeableListener: function (e) {\n e.stopPropagation();\n var animation = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('closable');\n\n if (animation !== '') {\n __WEBPACK_IMPORTED_MODULE_1__foundation_util_motion__[\"Motion\"].animateOut(__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this), animation, function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).trigger('closed.zf');\n });\n } else {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).fadeOut().trigger('closed.zf');\n }\n },\n toggleFocusListener: function () {\n var id = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).data('toggle-focus');\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()('#' + id).triggerHandler('toggle.zf.trigger', [__WEBPACK_IMPORTED_MODULE_0_jquery___default()(this)]);\n }\n};\n\n// Elements with [data-open] will reveal a plugin that supports it when clicked.\nTriggers.Initializers.addOpenListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.openListener);\n $elem.on('click.zf.trigger', '[data-open]', Triggers.Listeners.Basic.openListener);\n};\n\n// Elements with [data-close] will close a plugin that supports it when clicked.\n// If used without a value on [data-close], the event will bubble, allowing it to close a parent component.\nTriggers.Initializers.addCloseListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.closeListener);\n $elem.on('click.zf.trigger', '[data-close]', Triggers.Listeners.Basic.closeListener);\n};\n\n// Elements with [data-toggle] will toggle a plugin that supports it when clicked.\nTriggers.Initializers.addToggleListener = function ($elem) {\n $elem.off('click.zf.trigger', Triggers.Listeners.Basic.toggleListener);\n $elem.on('click.zf.trigger', '[data-toggle]', Triggers.Listeners.Basic.toggleListener);\n};\n\n// Elements with [data-closable] will respond to close.zf.trigger events.\nTriggers.Initializers.addCloseableListener = function ($elem) {\n $elem.off('close.zf.trigger', Triggers.Listeners.Basic.closeableListener);\n $elem.on('close.zf.trigger', '[data-closeable], [data-closable]', Triggers.Listeners.Basic.closeableListener);\n};\n\n// Elements with [data-toggle-focus] will respond to coming in and out of focus\nTriggers.Initializers.addToggleFocusListener = function ($elem) {\n $elem.off('focus.zf.trigger blur.zf.trigger', Triggers.Listeners.Basic.toggleFocusListener);\n $elem.on('focus.zf.trigger blur.zf.trigger', '[data-toggle-focus]', Triggers.Listeners.Basic.toggleFocusListener);\n};\n\n// More Global/complex listeners and triggers\nTriggers.Listeners.Global = {\n resizeListener: function ($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('resizeme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a resize event\n $nodes.attr('data-events', \"resize\");\n },\n scrollListener: function ($nodes) {\n if (!MutationObserver) {\n //fallback for IE 9\n $nodes.each(function () {\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this).triggerHandler('scrollme.zf.trigger');\n });\n }\n //trigger all listening elements and signal a scroll event\n $nodes.attr('data-events', \"scroll\");\n },\n closeMeListener: function (e, pluginId) {\n var plugin = e.namespace.split('.')[0];\n var plugins = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-' + plugin + ']').not('[data-yeti-box=\"' + pluginId + '\"]');\n\n plugins.each(function () {\n var _this = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(this);\n _this.triggerHandler('close.zf.trigger', [_this]);\n });\n }\n\n // Global, parses whole document.\n};Triggers.Initializers.addClosemeListener = function (pluginName) {\n var yetiBoxes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-yeti-box]'),\n plugNames = ['dropdown', 'tooltip', 'reveal'];\n\n if (pluginName) {\n if (typeof pluginName === 'string') {\n plugNames.push(pluginName);\n } else if (typeof pluginName === 'object' && typeof pluginName[0] === 'string') {\n plugNames.concat(pluginName);\n } else {\n console.error('Plugin names must be strings');\n }\n }\n if (yetiBoxes.length) {\n var listeners = plugNames.map(function (name) {\n return 'closeme.zf.' + name;\n }).join(' ');\n\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(listeners).on(listeners, Triggers.Listeners.Global.closeMeListener);\n }\n};\n\nfunction debounceGlobalListener(debounce, trigger, listener) {\n var timer = void 0,\n args = Array.prototype.slice.call(arguments, 3);\n __WEBPACK_IMPORTED_MODULE_0_jquery___default()(window).off(trigger).on(trigger, function (e) {\n if (timer) {\n clearTimeout(timer);\n }\n timer = setTimeout(function () {\n listener.apply(null, args);\n }, debounce || 10); //default time to emit scroll event\n });\n}\n\nTriggers.Initializers.addResizeListener = function (debounce) {\n var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-resize]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'resize.zf.trigger', Triggers.Listeners.Global.resizeListener, $nodes);\n }\n};\n\nTriggers.Initializers.addScrollListener = function (debounce) {\n var $nodes = __WEBPACK_IMPORTED_MODULE_0_jquery___default()('[data-scroll]');\n if ($nodes.length) {\n debounceGlobalListener(debounce, 'scroll.zf.trigger', Triggers.Listeners.Global.scrollListener, $nodes);\n }\n};\n\nTriggers.Initializers.addMutationEventsListener = function ($elem) {\n if (!MutationObserver) {\n return false;\n }\n var $nodes = $elem.find('[data-resize], [data-scroll], [data-mutate]');\n\n //element callback\n var listeningElementsMutation = function (mutationRecordsList) {\n var $target = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(mutationRecordsList[0].target);\n\n //trigger the event handler for the element depending on type\n switch (mutationRecordsList[0].type) {\n case \"attributes\":\n if ($target.attr(\"data-events\") === \"scroll\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('scrollme.zf.trigger', [$target, window.pageYOffset]);\n }\n if ($target.attr(\"data-events\") === \"resize\" && mutationRecordsList[0].attributeName === \"data-events\") {\n $target.triggerHandler('resizeme.zf.trigger', [$target]);\n }\n if (mutationRecordsList[0].attributeName === \"style\") {\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n }\n break;\n\n case \"childList\":\n $target.closest(\"[data-mutate]\").attr(\"data-events\", \"mutate\");\n $target.closest(\"[data-mutate]\").triggerHandler('mutateme.zf.trigger', [$target.closest(\"[data-mutate]\")]);\n break;\n\n default:\n return false;\n //nothing\n }\n };\n\n if ($nodes.length) {\n //for each element that needs to listen for resizing, scrolling, or mutation add a single observer\n for (var i = 0; i <= $nodes.length - 1; i++) {\n var elementObserver = new MutationObserver(listeningElementsMutation);\n elementObserver.observe($nodes[i], { attributes: true, childList: true, characterData: false, subtree: true, attributeFilter: [\"data-events\", \"style\"] });\n }\n }\n};\n\nTriggers.Initializers.addSimpleListeners = function () {\n var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);\n\n Triggers.Initializers.addOpenListener($document);\n Triggers.Initializers.addCloseListener($document);\n Triggers.Initializers.addToggleListener($document);\n Triggers.Initializers.addCloseableListener($document);\n Triggers.Initializers.addToggleFocusListener($document);\n};\n\nTriggers.Initializers.addGlobalListeners = function () {\n var $document = __WEBPACK_IMPORTED_MODULE_0_jquery___default()(document);\n Triggers.Initializers.addMutationEventsListener($document);\n Triggers.Initializers.addResizeListener();\n Triggers.Initializers.addScrollListener();\n Triggers.Initializers.addClosemeListener();\n};\n\nTriggers.init = function ($, Foundation) {\n if (typeof $.triggersInitialized === 'undefined') {\n var $document = $(document);\n\n if (document.readyState === \"complete\") {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n } else {\n $(window).on('load', function () {\n Triggers.Initializers.addSimpleListeners();\n Triggers.Initializers.addGlobalListeners();\n });\n }\n\n $.triggersInitialized = true;\n }\n\n if (Foundation) {\n Foundation.Triggers = Triggers;\n // Legacy included to be backwards compatible for now.\n Foundation.IHearYou = Triggers.Initializers.addGlobalListeners;\n }\n};\n\n\n\n/***/ }),\n\n/***/ 88:\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(22);\n\n\n/***/ })\n\n/******/ });"],"sourceRoot":"/source/"}