UNPKG

49.8 kBSource Map (JSON)View Raw
1{"version":3,"sources":["webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/universalModuleDefinition","webpack://__FOUNDATION_EXTERNAL__.[name]/webpack/bootstrap","webpack://__FOUNDATION_EXTERNAL__.[name]/js/entries/plugins/foundation.core.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.core.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.core.plugin.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.core.utils.js","webpack://__FOUNDATION_EXTERNAL__.[name]/js/foundation.util.mediaQuery.js","webpack:/__FOUNDATION_EXTERNAL__.[name]/external {\"root\":[\"jQuery\"],\"amd\":\"jquery\",\"commonjs\":\"jquery\",\"commonjs2\":\"jquery\"}"],"names":["root","factory","exports","module","require","define","amd","window","__WEBPACK_EXTERNAL_MODULE_jquery__","installedModules","__webpack_require__","m","r","__webpack_exports__","jquery__WEBPACK_IMPORTED_MODULE_0__","jquery__WEBPACK_IMPORTED_MODULE_0___default","n","_foundation_core__WEBPACK_IMPORTED_MODULE_1__","d","_foundation_core_plugin__WEBPACK_IMPORTED_MODULE_2__","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_3__","Foundation","addToJquery","$","Plugin","rtl","GetYoDigits","transitionend","RegExpEscape","onLoad","_foundation_core_utils__WEBPACK_IMPORTED_MODULE_1__","_foundation_util_mediaQuery__WEBPACK_IMPORTED_MODULE_2__","version","_plugins","_uuids","plugin","name","className","functionName","attrName","hyphenate","this","registerPlugin","pluginName","constructor","toLowerCase","uuid","$element","attr","concat","data","trigger","push","unregisterPlugin","prop","splice","indexOf","removeAttr","removeData","reInit","plugins","isJQ","each","_init","type","_typeof","_this","object","plgs","forEach","p","foundation","string","undefined","Object","keys","err","console","error","reflow","elem","i","find","addBack","filter","$el","opts","split","option","_index","opt","map","el","trim","str","isNaN","parseFloat","parseValue","er","getFnName","fn","method","$noJS","length","removeClass","MediaQuery","TypeError","args","Array","prototype","slice","call","arguments","plugClass","ReferenceError","apply","Function","results","exec","toString","replace","util","throttle","func","delay","timer","context","setTimeout","Date","now","getTime","vendors","requestAnimationFrame","vp","cancelAnimationFrame","test","navigator","userAgent","lastTime","callback","nextTime","Math","max","clearTimeout","performance","start","bind","oThis","fNOP","fBound","fToBind","aArgs","element","options","_classCallCheck","_setup","getPluginName","_destroy","obj","ignoreMousedisappear","namespace","chars","charsLength","floor","random","$elem","end","transitions","transition","WebkitTransition","MozTransition","OTransition","document","createElement","style","triggerHandler","handler","cb","eventType","didLoad","readyState","one","_ref","_ref$ignoreLeaveWindo","ignoreLeaveWindow","_ref$ignoreReappear","ignoreReappear","eLeave","_len","rest","_key","relatedTarget","hasFocus","eReenter","currentTarget","has","target","matchMedia","styleMedia","media","info","script","getElementsByTagName","id","parentNode","insertBefore","head","appendChild","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","width","matches","queries","current","isInitialized","appendTo","namedQueries","extractedStyles","css","key","styleObject","reduce","ret","param","parts","val","decodeURIComponent","hasOwnProperty","isArray","parseStyleToObject","value","_getCurrentSize","_watcher","_reInit","atLeast","size","query","get","only","upTo","nextSize","next","is","_parts","_slicedToArray","bpSize","_parts$","bpModifier","Error","queryIndex","findIndex","q","_getQueryName","nextQuery","matched","_this2","off","on","newSize","currentSize","c","getter","o","defineProperty","enumerable","Symbol","toStringTag","t","mode","__esModule","ns","create","property","s","moduleId","l","modules"],"mappings":"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","file":"foundation.core.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"jquery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"jquery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"foundation.core\"] = factory(require(\"jquery\"));\n\telse\n\t\troot[\"__FOUNDATION_EXTERNAL__\"] = root[\"__FOUNDATION_EXTERNAL__\"] || {}, root[\"__FOUNDATION_EXTERNAL__\"][\"foundation.core\"] = factory(root[\"jQuery\"]);\n})(window, function(__WEBPACK_EXTERNAL_MODULE_jquery__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","// --- Foundation Core API ---\n// Initialize Foundation and add some utilities to its public API for backward compatibility.\n// Please note that every utility do not have to be added to the core API.\nimport $ from 'jquery';\nimport { Foundation } from '../../foundation.core';\nimport { Plugin } from '../../foundation.core.plugin';\nimport { rtl, GetYoDigits, transitionend, RegExpEscape, onLoad } from '../../foundation.core.utils';\n\nFoundation.addToJquery($);\n\n// Every plugin depends on plugin now, we can include that on the core for the\n// script inclusion path.\nFoundation.Plugin = Plugin;\n\n// These are now separated out, but historically were a part of this module,\n// and since this is here for backwards compatibility we include them in\n// this entry.\nFoundation.rtl = rtl;\nFoundation.GetYoDigits = GetYoDigits;\nFoundation.transitionend = transitionend;\nFoundation.RegExpEscape = RegExpEscape;\nFoundation.onLoad = onLoad;\n\nwindow.Foundation = Foundation;\n\n// --- Foundation Core exports ---\n// Export \"Plugin\" and all core utilities, since the `foundation.core` entry plays the role of\n// all core source files.\n\nexport { Foundation };\nexport * from '../../foundation.core.plugin';\nexport * from '../../foundation.core.utils';\n","\"use strict\";\n\nimport $ from 'jquery';\nimport { GetYoDigits } from './foundation.core.utils';\nimport { MediaQuery } from './foundation.util.mediaQuery';\n\nvar FOUNDATION_VERSION = '6.6.2';\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 = GetYoDigits(6, pluginName);\n\n if(!plugin.$element.attr(`data-${pluginName}`)){ plugin.$element.attr(`data-${pluginName}`, plugin.uuid); }\n if(!plugin.$element.data('zfPlugin')){ plugin.$element.data('zfPlugin', plugin); }\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 $;\n try{\n if(isJQ){\n plugins.each(function(){\n $(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 $('[data-'+ p +']').foundation('_init');\n });\n },\n 'string': function(){\n plugins = hyphenate(plugins);\n $('[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 $.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 = $(elem).find('[data-'+name+']').addBack('[data-'+name+']').filter(function () {\n return typeof $(this).data(\"zfPlugin\") === 'undefined';\n });\n\n // For each plugin found, initialize it\n $elem.each(function() {\n var $el = $(this),\n opts = { reflow: true };\n\n if($el.attr('data-options')){\n $el.attr('data-options').split(';').forEach(function(option, _index){\n var opt = option.split(':').map(function(el){ return el.trim(); });\n if(opt[0]) opts[opt[0]] = parseValue(opt[1]);\n });\n }\n try{\n $el.data('zfPlugin', new plugin($(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'){//needs to initialize the Foundation object, or an individual plugin.\n MediaQuery._init();\n Foundation.reflow(this);\n }else if(type === 'string'){//an individual method to invoke on a plugin or group of plugins\n var args = Array.prototype.slice.call(arguments, 1);//collect all the arguments, if necessary\n var plugClass = this.data('zfPlugin');//determine the class of plugin\n\n if(typeof plugClass !== 'undefined' && typeof plugClass[method] !== 'undefined'){//make sure both the class and method exist\n if(this.length === 1){//if there's only one, call it directly.\n plugClass[method].apply(plugClass, args);\n }else{\n this.each(function(i, el){//otherwise loop through the jQuery collection and invoke the method on each\n plugClass[method].apply($(el).data('zfPlugin'), args);\n });\n }\n }else{//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{//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, 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)\n window.Date.now = Date.now = function() { return new Date().getTime(); };\n\n var vendors = ['webkit', 'moz'];\n for (var i = 0; i < vendors.length && !window.requestAnimationFrame; ++i) {\n var vp = vendors[i];\n window.requestAnimationFrame = window[vp+'RequestAnimationFrame'];\n window.cancelAnimationFrame = (window[vp+'CancelAnimationFrame']\n || window[vp+'CancelRequestAnimationFrame']);\n }\n if (/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)\n || !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() { 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(){ return Date.now() - this.start; }\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\n ? this\n : oThis,\n 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 (typeof Function.prototype.name === 'undefined') {\n var funcNameRegex = /function\\s([^(]{1,})\\(/;\n var results = (funcNameRegex).exec((fn).toString());\n return (results && results.length > 1) ? results[1].trim() : \"\";\n }\n else if (typeof fn.prototype === 'undefined') {\n return fn.constructor.name;\n }\n else {\n return fn.prototype.constructor.name;\n }\n}\nfunction parseValue(str){\n if ('true' === str) return true;\n else if ('false' === str) return false;\n 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\nexport {Foundation};\n","'use strict';\n\nimport $ from 'jquery';\nimport { GetYoDigits } from './foundation.core.utils';\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)\nclass Plugin {\n\n constructor(element, options) {\n this._setup(element, options);\n var pluginName = getPluginName(this);\n this.uuid = GetYoDigits(6, pluginName);\n\n if(!this.$element.attr(`data-${pluginName}`)){ this.$element.attr(`data-${pluginName}`, this.uuid); }\n if(!this.$element.data('zfPlugin')){ this.$element.data('zfPlugin', this); }\n /**\n * Fires when the plugin has initialized.\n * @event Plugin#init\n */\n this.$element.trigger(`init.zf.${pluginName}`);\n }\n\n 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// 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\nfunction getPluginName(obj) {\n return hyphenate(obj.className);\n}\n\nexport {Plugin};\n","\"use strict\";\n\nimport $ from 'jquery';\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 $('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 = 6, namespace){\n let str = '';\n const chars = '0123456789abcdefghijklmnopqrstuvwxyz';\n const charsLength = chars.length;\n for (let i = 0; i < length; i++) {\n str += chars[Math.floor(Math.random() * charsLength)];\n }\n return namespace ? `${str}-${namespace}` : str;\n}\n\n/**\n * Escape a string so it can be used as a regexp pattern\n * @function\n * @see https://stackoverflow.com/a/9310752/4317384\n *\n * @param {String} str - string to escape.\n * @returns {String} - escaped string\n */\nfunction RegExpEscape(str){\n return str.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n}\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 (let transition in transitions){\n if (typeof elem.style[transition] !== 'undefined'){\n end = transitions[transition];\n }\n }\n if (end) {\n return end;\n } else {\n setTimeout(function(){\n $elem.triggerHandler('transitionend', [$elem]);\n }, 1);\n return 'transitionend';\n }\n}\n\n/**\n * Return an event type to listen for window load.\n *\n * If `$elem` is passed, an event will be triggered on `$elem`. If window is already loaded, the event will still be triggered.\n * If `handler` is passed, attach it to the event on `$elem`.\n * Calling `onLoad` without handler allows you to get the event type that will be triggered before attaching the handler by yourself.\n * @function\n *\n * @param {Object} [] $elem - jQuery element on which the event will be triggered if passed.\n * @param {Function} [] handler - function to attach to the event.\n * @returns {String} - event type that should or will be triggered.\n */\nfunction onLoad($elem, handler) {\n const didLoad = document.readyState === 'complete';\n const eventType = (didLoad ? '_didLoad' : 'load') + '.zf.util.onLoad';\n const cb = () => $elem.triggerHandler(eventType);\n\n if ($elem) {\n if (handler) $elem.one(eventType, handler);\n\n if (didLoad)\n setTimeout(cb);\n else\n $(window).one('load', cb);\n }\n\n return eventType;\n}\n\n/**\n * Retuns an handler for the `mouseleave` that ignore disappeared mouses.\n *\n * If the mouse \"disappeared\" from the document (like when going on a browser UI element, See https://git.io/zf-11410),\n * the event is ignored.\n * - If the `ignoreLeaveWindow` is `true`, the event is ignored when the user actually left the window\n * (like by switching to an other window with [Alt]+[Tab]).\n * - If the `ignoreReappear` is `true`, the event will be ignored when the mouse will reappear later on the document\n * outside of the element it left.\n *\n * @function\n *\n * @param {Function} [] handler - handler for the filtered `mouseleave` event to watch.\n * @param {Object} [] options - object of options:\n * - {Boolean} [false] ignoreLeaveWindow - also ignore when the user switched windows.\n * - {Boolean} [false] ignoreReappear - also ignore when the mouse reappeared outside of the element it left.\n * @returns {Function} - filtered handler to use to listen on the `mouseleave` event.\n */\nfunction ignoreMousedisappear(handler, { ignoreLeaveWindow = false, ignoreReappear = false } = {}) {\n return function leaveEventHandler(eLeave, ...rest) {\n const callback = handler.bind(this, eLeave, ...rest);\n\n // The mouse left: call the given callback if the mouse entered elsewhere\n if (eLeave.relatedTarget !== null) {\n return callback();\n }\n\n // Otherwise, check if the mouse actually left the window.\n // In firefox if the user switched between windows, the window sill have the focus by the time\n // the event is triggered. We have to debounce the event to test this case.\n setTimeout(function leaveEventDebouncer() {\n if (!ignoreLeaveWindow && document.hasFocus && !document.hasFocus()) {\n return callback();\n }\n\n // Otherwise, wait for the mouse to reeapear outside of the element,\n if (!ignoreReappear) {\n $(document).one('mouseenter', function reenterEventHandler(eReenter) {\n if (!$(eLeave.currentTarget).has(eReenter.target).length) {\n // Fill where the mouse finally entered.\n eLeave.relatedTarget = eReenter.target;\n callback();\n }\n });\n }\n\n }, 0);\n };\n}\n\n\nexport { rtl, GetYoDigits, RegExpEscape, transitionend, onLoad, ignoreMousedisappear };\n","'use strict';\n\nimport $ from 'jquery';\n\n// Default set of media queries\nconst defaultQueries = {\n 'default' : 'only screen',\n landscape : 'only screen and (orientation: landscape)',\n portrait : 'only screen and (orientation: portrait)',\n retina : 'only screen and (-webkit-min-device-pixel-ratio: 2),' +\n 'only screen and (min--moz-device-pixel-ratio: 2),' +\n 'only screen and (-o-min-device-pixel-ratio: 2/1),' +\n 'only screen and (min-device-pixel-ratio: 2),' +\n 'only screen and (min-resolution: 192dpi),' +\n 'only screen and (min-resolution: 2dppx)'\n };\n\n\n// matchMedia() polyfill - Test a CSS media type/query in JS.\n// Authors & copyright © 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. MIT license\n/* eslint-disable */\nwindow.matchMedia || (window.matchMedia = (function () {\n \"use strict\";\n\n // For browsers that support matchMedium api such as IE 9 and webkit\n var styleMedia = (window.styleMedia || window.media);\n\n // For those that don't support matchMedium\n if (!styleMedia) {\n var style = document.createElement('style'),\n script = document.getElementsByTagName('script')[0],\n info = null;\n\n style.type = 'text/css';\n style.id = 'matchmediajs-test';\n\n if (!script) {\n document.head.appendChild(style);\n } else {\n script.parentNode.insertBefore(style, script);\n }\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/* eslint-enable */\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() {\n\n // make sure the initialization is only done once when calling _init() several times\n if (this.isInitialized === true) {\n return;\n } else {\n this.isInitialized = true;\n }\n\n var self = this;\n var $meta = $('meta.foundation-mq');\n if(!$meta.length){\n $('<meta class=\"foundation-mq\">').appendTo(document.head);\n }\n\n var extractedStyles = $('.foundation-mq').css('font-family');\n var namedQueries;\n\n namedQueries = parseStyleToObject(extractedStyles);\n\n self.queries = []; // reset\n\n for (var key in namedQueries) {\n if(namedQueries.hasOwnProperty(key)) {\n self.queries.push({\n name: key,\n value: `only screen and (min-width: ${namedQueries[key]})`\n });\n }\n }\n\n this.current = this._getCurrentSize();\n\n this._watcher();\n },\n\n /**\n * Reinitializes the media query helper.\n * Useful if your CSS breakpoint configuration has just been loaded or has changed since the initialization.\n * @function\n * @private\n */\n _reInit() {\n this.isInitialized = false;\n this._init();\n },\n\n /**\n * Checks if the screen is at least as wide as a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's smaller.\n */\n atLeast(size) {\n var query = this.get(size);\n\n if (query) {\n return window.matchMedia(query).matches;\n }\n\n return false;\n },\n\n /**\n * Checks if the screen is within the given breakpoint.\n * If smaller than the breakpoint of larger than its upper limit it returns false.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` otherwise.\n */\n only(size) {\n return size === this._getCurrentSize();\n },\n\n /**\n * Checks if the screen is within a breakpoint or smaller.\n * @function\n * @param {String} size - Name of the breakpoint to check.\n * @returns {Boolean} `true` if the breakpoint matches, `false` if it's larger.\n */\n upTo(size) {\n const nextSize = this.next(size);\n\n // If the next breakpoint does not match, the screen is smaller than\n // the upper limit of this breakpoint.\n if (nextSize) {\n return !this.atLeast(nextSize);\n }\n\n // If there is no next breakpoint, the \"size\" breakpoint does not have\n // an upper limit and the screen will always be within it or smaller.\n return true;\n },\n\n /**\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(size) {\n const parts = size.trim().split(' ').filter(p => !!p.length);\n const [bpSize, bpModifier = ''] = parts;\n\n // Only the breakpont\n if (bpModifier === 'only') {\n return this.only(bpSize);\n }\n // At least the breakpoint (included)\n if (!bpModifier || bpModifier === 'up') {\n return this.atLeast(bpSize);\n }\n // Up to the breakpoint (included)\n if (bpModifier === 'down') {\n return this.upTo(bpSize);\n }\n\n throw new Error(`\n Invalid breakpoint passed to MediaQuery.is().\n Expected a breakpoint name formatted like \"<size> <modifier>\", got \"${size}\".\n `);\n },\n\n /**\n * Gets the media query of a breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint to get.\n * @returns {String|null} - The media query of the breakpoint, or `null` if the breakpoint doesn't exist.\n */\n get(size) {\n for (var i in this.queries) {\n if(this.queries.hasOwnProperty(i)) {\n var query = this.queries[i];\n if (size === query.name) return query.value;\n }\n }\n\n return null;\n },\n\n /**\n * Get the breakpoint following the given breakpoint.\n * @function\n * @param {String} size - Name of the breakpoint.\n * @returns {String|null} - The name of the following breakpoint, or `null` if the passed breakpoint was the last one.\n */\n next(size) {\n const queryIndex = this.queries.findIndex((q) => this._getQueryName(q) === size);\n if (queryIndex === -1) {\n throw new Error(`\n Unknown breakpoint \"${size}\" passed to MediaQuery.next().\n Ensure it is present in your Sass \"$breakpoints\" setting.\n `);\n }\n\n const nextQuery = this.queries[queryIndex + 1];\n return nextQuery ? nextQuery.name : null;\n },\n\n /**\n * Returns the name of the breakpoint related to the given value.\n * @function\n * @private\n * @param {String|Object} value - Breakpoint name or query object.\n * @returns {String} Name of the breakpoint.\n */\n _getQueryName(value) {\n if (typeof value === 'string')\n return value;\n if (typeof value === 'object')\n return value.name;\n throw new TypeError(`\n Invalid value passed to MediaQuery._getQueryName().\n Expected a breakpoint name (String) or a breakpoint query (Object), got \"${value}\" (${typeof value})\n `);\n },\n\n /**\n * Gets the current breakpoint name by testing every breakpoint and returning the last one to match (the biggest one).\n * @function\n * @private\n * @returns {String} Name of the current breakpoint.\n */\n _getCurrentSize() {\n var matched;\n\n for (var i = 0; i < this.queries.length; i++) {\n var query = this.queries[i];\n\n if (window.matchMedia(query.value).matches) {\n matched = query;\n }\n }\n\n return matched && this._getQueryName(matched);\n },\n\n /**\n * Activates the breakpoint watcher, which fires an event on the window whenever the breakpoint changes.\n * @function\n * @private\n */\n _watcher() {\n $(window).off('resize.zf.mediaquery').on('resize.zf.mediaquery', () => {\n var newSize = this._getCurrentSize(), 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 $(window).trigger('changed.zf.mediaquery', [newSize, currentSize]);\n }\n });\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 = typeof val === 'undefined' ? null : decodeURIComponent(val);\n\n if (!ret.hasOwnProperty(key)) {\n ret[key] = val;\n } else if (Array.isArray(ret[key])) {\n ret[key].push(val);\n } else {\n ret[key] = [ret[key], val];\n }\n return ret;\n }, {});\n\n return styleObject;\n}\n\nexport {MediaQuery};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_jquery__;"]}
\No newline at end of file