UNPKG

vue-element-queries

Version:

A Vue directive for using element queries to build responsive components.

1,685 lines (1,334 loc) 62.5 kB
module.exports = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = "Yhqr"); /******/ }) /************************************************************************/ /******/ ({ /***/ "+OAr": /***/ (function(module, exports, __webpack_require__) { var core = __webpack_require__("vlp9"); var global = __webpack_require__("1wvP"); var SHARED = '__core-js_shared__'; var store = global[SHARED] || (global[SHARED] = {}); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: core.version, mode: __webpack_require__("3h5O") ? 'pure' : 'global', copyright: '© 2018 Denis Pushkarev (zloirock.ru)' }); /***/ }), /***/ "+jBU": /***/ (function(module, exports, __webpack_require__) { var document = __webpack_require__("1wvP").document; module.exports = document && document.documentElement; /***/ }), /***/ "1wvP": /***/ (function(module, exports) { // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 var global = module.exports = typeof window != 'undefined' && window.Math == Math ? window : typeof self != 'undefined' && self.Math == Math ? self // eslint-disable-next-line no-new-func : Function('return this')(); if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef /***/ }), /***/ "2Rpf": /***/ (function(module, exports, __webpack_require__) { // 0 -> Array#forEach // 1 -> Array#map // 2 -> Array#filter // 3 -> Array#some // 4 -> Array#every // 5 -> Array#find // 6 -> Array#findIndex var ctx = __webpack_require__("pioK"); var IObject = __webpack_require__("vjA/"); var toObject = __webpack_require__("Nb9L"); var toLength = __webpack_require__("U9NY"); var asc = __webpack_require__("VlJI"); module.exports = function (TYPE, $create) { var IS_MAP = TYPE == 1; var IS_FILTER = TYPE == 2; var IS_SOME = TYPE == 3; var IS_EVERY = TYPE == 4; var IS_FIND_INDEX = TYPE == 6; var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; var create = $create || asc; return function ($this, callbackfn, that) { var O = toObject($this); var self = IObject(O); var f = ctx(callbackfn, that, 3); var length = toLength(self.length); var index = 0; var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; var val, res; for (;length > index; index++) if (NO_HOLES || index in self) { val = self[index]; res = f(val, index, O); if (TYPE) { if (IS_MAP) result[index] = res; // map else if (res) switch (TYPE) { case 3: return true; // some case 5: return val; // find case 6: return index; // findIndex case 2: result.push(val); // filter } else if (IS_EVERY) return false; // every } } return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result; }; }; /***/ }), /***/ "3h5O": /***/ (function(module, exports) { module.exports = false; /***/ }), /***/ "3qjF": /***/ (function(module, exports) { var toString = {}.toString; module.exports = function (it) { return toString.call(it).slice(8, -1); }; /***/ }), /***/ "53Cw": /***/ (function(module, exports) { exports.f = {}.propertyIsEnumerable; /***/ }), /***/ "59Ib": /***/ (function(module, exports, __webpack_require__) { "use strict"; var create = __webpack_require__("S8mh"); var descriptor = __webpack_require__("R1bx"); var setToStringTag = __webpack_require__("OIVH"); var IteratorPrototype = {}; // 25.1.2.1.1 %IteratorPrototype%[@@iterator]() __webpack_require__("XA8k")(IteratorPrototype, __webpack_require__("7D+n")('iterator'), function () { return this; }); module.exports = function (Constructor, NAME, next) { Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) }); setToStringTag(Constructor, NAME + ' Iterator'); }; /***/ }), /***/ "7D+n": /***/ (function(module, exports, __webpack_require__) { var store = __webpack_require__("+OAr")('wks'); var uid = __webpack_require__("b3my"); var Symbol = __webpack_require__("1wvP").Symbol; var USE_SYMBOL = typeof Symbol == 'function'; var $exports = module.exports = function (name) { return store[name] || (store[name] = USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name)); }; $exports.store = store; /***/ }), /***/ "7Gz4": /***/ (function(module, exports, __webpack_require__) { // This file is imported into lib/wc client bundles. if (typeof window !== 'undefined') { let i if ((i = window.document.currentScript) && (i = i.src.match(/(.+\/)[^/]+\.js$/))) { __webpack_require__.p = i[1] // eslint-disable-line } } /***/ }), /***/ "84BH": /***/ (function(module, exports, __webpack_require__) { var has = __webpack_require__("MzIJ"); var toIObject = __webpack_require__("Yxsw"); var arrayIndexOf = __webpack_require__("Jcby")(false); var IE_PROTO = __webpack_require__("mPYY")('IE_PROTO'); module.exports = function (object, names) { var O = toIObject(object); var i = 0; var result = []; var key; for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key); // Don't enum bug & hidden keys while (names.length > i) if (has(O, key = names[i++])) { ~arrayIndexOf(result, key) || result.push(key); } return result; }; /***/ }), /***/ "8Ib8": /***/ (function(module, exports) { module.exports = function (done, value) { return { value: value, done: !!done }; }; /***/ }), /***/ "BPiH": /***/ (function(module, exports, __webpack_require__) { "use strict"; var fails = __webpack_require__("gbI/"); module.exports = function (method, arg) { return !!method && fails(function () { // eslint-disable-next-line no-useless-call arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null); }); }; /***/ }), /***/ "BjRm": /***/ (function(module, exports, __webpack_require__) { // 7.1.1 ToPrimitive(input [, PreferredType]) var isObject = __webpack_require__("PUi0"); // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (it, S) { if (!isObject(it)) return it; var fn, val; if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val; if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val; throw TypeError("Can't convert object to primitive value"); }; /***/ }), /***/ "Ef9j": /***/ (function(module, exports, __webpack_require__) { "use strict"; // 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined) var $export = __webpack_require__("t1yY"); var $find = __webpack_require__("2Rpf")(5); var KEY = 'find'; var forced = true; // Shouldn't skip holes if (KEY in []) Array(1)[KEY](function () { forced = false; }); $export($export.P + $export.F * forced, 'Array', { find: function find(callbackfn /* , that = undefined */) { return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); } }); __webpack_require__("YKKp")(KEY); /***/ }), /***/ "FR8X": /***/ (function(module, exports, __webpack_require__) { "use strict"; var global = __webpack_require__("1wvP"); var dP = __webpack_require__("uKfR"); var DESCRIPTORS = __webpack_require__("k9+X"); var SPECIES = __webpack_require__("7D+n")('species'); module.exports = function (KEY) { var C = global[KEY]; if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, { configurable: true, get: function () { return this; } }); }; /***/ }), /***/ "FfIX": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 / 15.2.3.14 Object.keys(O) var $keys = __webpack_require__("84BH"); var enumBugKeys = __webpack_require__("JaTa"); module.exports = Object.keys || function keys(O) { return $keys(O, enumBugKeys); }; /***/ }), /***/ "IQBv": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O) var has = __webpack_require__("MzIJ"); var toObject = __webpack_require__("Nb9L"); var IE_PROTO = __webpack_require__("mPYY")('IE_PROTO'); var ObjectProto = Object.prototype; module.exports = Object.getPrototypeOf || function (O) { O = toObject(O); if (has(O, IE_PROTO)) return O[IE_PROTO]; if (typeof O.constructor == 'function' && O instanceof O.constructor) { return O.constructor.prototype; } return O instanceof Object ? ObjectProto : null; }; /***/ }), /***/ "IfvN": /***/ (function(module, exports, __webpack_require__) { // 7.2.2 IsArray(argument) var cof = __webpack_require__("3qjF"); module.exports = Array.isArray || function isArray(arg) { return cof(arg) == 'Array'; }; /***/ }), /***/ "JaTa": /***/ (function(module, exports) { // IE 8- don't enum bug keys module.exports = ( 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf' ).split(','); /***/ }), /***/ "Jcby": /***/ (function(module, exports, __webpack_require__) { // false -> Array#indexOf // true -> Array#includes var toIObject = __webpack_require__("Yxsw"); var toLength = __webpack_require__("U9NY"); var toAbsoluteIndex = __webpack_require__("fsba"); module.exports = function (IS_INCLUDES) { return function ($this, el, fromIndex) { var O = toIObject($this); var length = toLength(O.length); var index = toAbsoluteIndex(fromIndex, length); var value; // Array#includes uses SameValueZero equality algorithm // eslint-disable-next-line no-self-compare if (IS_INCLUDES && el != el) while (length > index) { value = O[index++]; // eslint-disable-next-line no-self-compare if (value != value) return true; // Array#indexOf ignores holes, Array#includes - not } else for (;length > index; index++) if (IS_INCLUDES || index in O) { if (O[index] === el) return IS_INCLUDES || index || 0; } return !IS_INCLUDES && -1; }; }; /***/ }), /***/ "KtZj": /***/ (function(module, exports, __webpack_require__) { "use strict"; var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__; /** * Copyright Marc J. Schmidt. See the LICENSE file at the top-level * directory of this distribution and at * https://github.com/marcj/css-element-queries/blob/master/LICENSE. */ (function (root, factory) { if (true) { !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else {} }(typeof window !== 'undefined' ? window : this, function () { // Make sure it does not throw in a SSR (Server Side Rendering) situation if (typeof window === "undefined") { return null; } // Only used for the dirty checking, so the event callback count is limited to max 1 call per fps per sensor. // In combination with the event based resize sensor this saves cpu time, because the sensor is too fast and // would generate too many unnecessary events. var requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function (fn) { return window.setTimeout(fn, 20); }; /** * Iterate over each of the provided element(s). * * @param {HTMLElement|HTMLElement[]} elements * @param {Function} callback */ function forEachElement(elements, callback){ var elementsType = Object.prototype.toString.call(elements); var isCollectionTyped = ('[object Array]' === elementsType || ('[object NodeList]' === elementsType) || ('[object HTMLCollection]' === elementsType) || ('[object Object]' === elementsType) || ('undefined' !== typeof jQuery && elements instanceof jQuery) //jquery || ('undefined' !== typeof Elements && elements instanceof Elements) //mootools ); var i = 0, j = elements.length; if (isCollectionTyped) { for (; i < j; i++) { callback(elements[i]); } } else { callback(elements); } } /** * Get element size * @param {HTMLElement} element * @returns {Object} {width, height} */ function getElementSize(element) { if (!element.getBoundingClientRect) { return { width: element.offsetWidth, height: element.offsetHeight } } var rect = element.getBoundingClientRect(); return { width: Math.round(rect.width), height: Math.round(rect.height) } } /** * Class for dimension change detection. * * @param {Element|Element[]|Elements|jQuery} element * @param {Function} callback * * @constructor */ var ResizeSensor = function(element, callback) { /** * * @constructor */ function EventQueue() { var q = []; this.add = function(ev) { q.push(ev); }; var i, j; this.call = function() { for (i = 0, j = q.length; i < j; i++) { q[i].call(); } }; this.remove = function(ev) { var newQueue = []; for(i = 0, j = q.length; i < j; i++) { if(q[i] !== ev) newQueue.push(q[i]); } q = newQueue; }; this.length = function() { return q.length; } } /** * * @param {HTMLElement} element * @param {Function} resized */ function attachResizeEvent(element, resized) { if (!element) return; if (element.resizedAttached) { element.resizedAttached.add(resized); return; } element.resizedAttached = new EventQueue(); element.resizedAttached.add(resized); element.resizeSensor = document.createElement('div'); element.resizeSensor.dir = 'ltr'; element.resizeSensor.className = 'resize-sensor'; var style = 'position: absolute; left: -10px; top: -10px; right: 0; bottom: 0; overflow: hidden; z-index: -1; visibility: hidden;'; var styleChild = 'position: absolute; left: 0; top: 0; transition: 0s;'; element.resizeSensor.style.cssText = style; element.resizeSensor.innerHTML = '<div class="resize-sensor-expand" style="' + style + '">' + '<div style="' + styleChild + '"></div>' + '</div>' + '<div class="resize-sensor-shrink" style="' + style + '">' + '<div style="' + styleChild + ' width: 200%; height: 200%"></div>' + '</div>'; element.appendChild(element.resizeSensor); var position = window.getComputedStyle(element).getPropertyValue('position'); if ('absolute' !== position && 'relative' !== position && 'fixed' !== position) { element.style.position = 'relative'; } var expand = element.resizeSensor.childNodes[0]; var expandChild = expand.childNodes[0]; var shrink = element.resizeSensor.childNodes[1]; var dirty, rafId, newWidth, newHeight; var size = getElementSize(element); var lastWidth = size.width; var lastHeight = size.height; var reset = function() { //set display to block, necessary otherwise hidden elements won't ever work var invisible = element.offsetWidth === 0 && element.offsetHeight === 0; if (invisible) { var saveDisplay = element.style.display; element.style.display = 'block'; } expandChild.style.width = '100000px'; expandChild.style.height = '100000px'; expand.scrollLeft = 100000; expand.scrollTop = 100000; shrink.scrollLeft = 100000; shrink.scrollTop = 100000; if (invisible) { element.style.display = saveDisplay; } }; element.resizeSensor.resetSensor = reset; var onResized = function() { rafId = 0; if (!dirty) return; lastWidth = newWidth; lastHeight = newHeight; if (element.resizedAttached) { element.resizedAttached.call(); } }; var onScroll = function() { var size = getElementSize(element); var newWidth = size.width; var newHeight = size.height; dirty = newWidth != lastWidth || newHeight != lastHeight; if (dirty && !rafId) { rafId = requestAnimationFrame(onResized); } reset(); }; var addEvent = function(el, name, cb) { if (el.attachEvent) { el.attachEvent('on' + name, cb); } else { el.addEventListener(name, cb); } }; addEvent(expand, 'scroll', onScroll); addEvent(shrink, 'scroll', onScroll); // Fix for custom Elements requestAnimationFrame(reset); } forEachElement(element, function(elem){ attachResizeEvent(elem, callback); }); this.detach = function(ev) { ResizeSensor.detach(element, ev); }; this.reset = function() { element.resizeSensor.resetSensor(); }; }; ResizeSensor.reset = function(element, ev) { forEachElement(element, function(elem){ elem.resizeSensor.resetSensor(); }); }; ResizeSensor.detach = function(element, ev) { forEachElement(element, function(elem){ if (!elem) return; if(elem.resizedAttached && typeof ev === "function"){ elem.resizedAttached.remove(ev); if(elem.resizedAttached.length()) return; } if (elem.resizeSensor) { if (elem.contains(elem.resizeSensor)) { elem.removeChild(elem.resizeSensor); } delete elem.resizeSensor; delete elem.resizedAttached; } }); }; return ResizeSensor; })); /***/ }), /***/ "MzIJ": /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /***/ "Nb9L": /***/ (function(module, exports, __webpack_require__) { // 7.1.13 ToObject(argument) var defined = __webpack_require__("XpIx"); module.exports = function (it) { return Object(defined(it)); }; /***/ }), /***/ "O2Ai": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O) var $keys = __webpack_require__("84BH"); var hiddenKeys = __webpack_require__("JaTa").concat('length', 'prototype'); exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { return $keys(O, hiddenKeys); }; /***/ }), /***/ "OIVH": /***/ (function(module, exports, __webpack_require__) { var def = __webpack_require__("uKfR").f; var has = __webpack_require__("MzIJ"); var TAG = __webpack_require__("7D+n")('toStringTag'); module.exports = function (it, tag, stat) { if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag }); }; /***/ }), /***/ "OdnW": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.14 Object.keys(O) var toObject = __webpack_require__("Nb9L"); var $keys = __webpack_require__("FfIX"); __webpack_require__("m8XM")('keys', function () { return function keys(it) { return $keys(toObject(it)); }; }); /***/ }), /***/ "PUi0": /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /***/ "PVSW": /***/ (function(module, exports, __webpack_require__) { var pIE = __webpack_require__("53Cw"); var createDesc = __webpack_require__("R1bx"); var toIObject = __webpack_require__("Yxsw"); var toPrimitive = __webpack_require__("BjRm"); var has = __webpack_require__("MzIJ"); var IE8_DOM_DEFINE = __webpack_require__("bMrv"); var gOPD = Object.getOwnPropertyDescriptor; exports.f = __webpack_require__("k9+X") ? gOPD : function getOwnPropertyDescriptor(O, P) { O = toIObject(O); P = toPrimitive(P, true); if (IE8_DOM_DEFINE) try { return gOPD(O, P); } catch (e) { /* empty */ } if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]); }; /***/ }), /***/ "R1bx": /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /***/ "S8mh": /***/ (function(module, exports, __webpack_require__) { // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties]) var anObject = __webpack_require__("i/GF"); var dPs = __webpack_require__("k38r"); var enumBugKeys = __webpack_require__("JaTa"); var IE_PROTO = __webpack_require__("mPYY")('IE_PROTO'); var Empty = function () { /* empty */ }; var PROTOTYPE = 'prototype'; // Create object with fake `null` prototype: use iframe Object with cleared prototype var createDict = function () { // Thrash, waste and sodomy: IE GC bug var iframe = __webpack_require__("eVn5")('iframe'); var i = enumBugKeys.length; var lt = '<'; var gt = '>'; var iframeDocument; iframe.style.display = 'none'; __webpack_require__("+jBU").appendChild(iframe); iframe.src = 'javascript:'; // eslint-disable-line no-script-url // createDict = iframe.contentWindow.Object; // html.removeChild(iframe); iframeDocument = iframe.contentWindow.document; iframeDocument.open(); iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt); iframeDocument.close(); createDict = iframeDocument.F; while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]]; return createDict(); }; module.exports = Object.create || function create(O, Properties) { var result; if (O !== null) { Empty[PROTOTYPE] = anObject(O); result = new Empty(); Empty[PROTOTYPE] = null; // add "__proto__" for Object.getPrototypeOf polyfill result[IE_PROTO] = O; } else result = createDict(); return Properties === undefined ? result : dPs(result, Properties); }; /***/ }), /***/ "U9NY": /***/ (function(module, exports, __webpack_require__) { // 7.1.15 ToLength var toInteger = __webpack_require__("wgvU"); var min = Math.min; module.exports = function (it) { return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991 }; /***/ }), /***/ "Ve1X": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("PUi0"); var isArray = __webpack_require__("IfvN"); var SPECIES = __webpack_require__("7D+n")('species'); module.exports = function (original) { var C; if (isArray(original)) { C = original.constructor; // cross-realm fallback if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; if (isObject(C)) { C = C[SPECIES]; if (C === null) C = undefined; } } return C === undefined ? Array : C; }; /***/ }), /***/ "VlJI": /***/ (function(module, exports, __webpack_require__) { // 9.4.2.3 ArraySpeciesCreate(originalArray, length) var speciesConstructor = __webpack_require__("Ve1X"); module.exports = function (original, length) { return new (speciesConstructor(original))(length); }; /***/ }), /***/ "XA8k": /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__("uKfR"); var createDesc = __webpack_require__("R1bx"); module.exports = __webpack_require__("k9+X") ? function (object, key, value) { return dP.f(object, key, createDesc(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /***/ "XUoG": /***/ (function(module, exports, __webpack_require__) { var $iterators = __webpack_require__("o1ro"); var getKeys = __webpack_require__("FfIX"); var redefine = __webpack_require__("tfDl"); var global = __webpack_require__("1wvP"); var hide = __webpack_require__("XA8k"); var Iterators = __webpack_require__("bm5Y"); var wks = __webpack_require__("7D+n"); var ITERATOR = wks('iterator'); var TO_STRING_TAG = wks('toStringTag'); var ArrayValues = Iterators.Array; var DOMIterables = { CSSRuleList: true, // TODO: Not spec compliant, should be false. CSSStyleDeclaration: false, CSSValueList: false, ClientRectList: false, DOMRectList: false, DOMStringList: false, DOMTokenList: true, DataTransferItemList: false, FileList: false, HTMLAllCollection: false, HTMLCollection: false, HTMLFormElement: false, HTMLSelectElement: false, MediaList: true, // TODO: Not spec compliant, should be false. MimeTypeArray: false, NamedNodeMap: false, NodeList: true, PaintRequestList: false, Plugin: false, PluginArray: false, SVGLengthList: false, SVGNumberList: false, SVGPathSegList: false, SVGPointList: false, SVGStringList: false, SVGTransformList: false, SourceBufferList: false, StyleSheetList: true, // TODO: Not spec compliant, should be false. TextTrackCueList: false, TextTrackList: false, TouchList: false }; for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) { var NAME = collections[i]; var explicit = DOMIterables[NAME]; var Collection = global[NAME]; var proto = Collection && Collection.prototype; var key; if (proto) { if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues); if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME); Iterators[NAME] = ArrayValues; if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true); } } /***/ }), /***/ "XpIx": /***/ (function(module, exports) { // 7.2.1 RequireObjectCoercible(argument) module.exports = function (it) { if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; /***/ }), /***/ "YKKp": /***/ (function(module, exports, __webpack_require__) { // 22.1.3.31 Array.prototype[@@unscopables] var UNSCOPABLES = __webpack_require__("7D+n")('unscopables'); var ArrayProto = Array.prototype; if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__("XA8k")(ArrayProto, UNSCOPABLES, {}); module.exports = function (key) { ArrayProto[UNSCOPABLES][key] = true; }; /***/ }), /***/ "Yhqr": /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js var setPublicPath = __webpack_require__("7Gz4"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.array.index-of.js var es6_array_index_of = __webpack_require__("xO4F"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.array.for-each.js var es6_array_for_each = __webpack_require__("Yx2f"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.array.reduce.js var es6_array_reduce = __webpack_require__("fRkG"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.regexp.constructor.js var es6_regexp_constructor = __webpack_require__("vhJ+"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/web.dom.iterable.js var web_dom_iterable = __webpack_require__("XUoG"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.array.iterator.js var es6_array_iterator = __webpack_require__("o1ro"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.object.keys.js var es6_object_keys = __webpack_require__("OdnW"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.array.find.js var es6_array_find = __webpack_require__("Ef9j"); // EXTERNAL MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/core-js/modules/es6.regexp.match.js var es6_regexp_match = __webpack_require__("jZGP"); // CONCATENATED MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/@babel/runtime/helpers/builtin/es6/classCallCheck.js function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } // CONCATENATED MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/@babel/runtime/helpers/builtin/es6/createClass.js 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); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } // CONCATENATED MODULE: ./src/VueElementQuery.js var VueElementQuery_VueElementQuery = /*#__PURE__*/ function () { /** * Constructor for the class * @param {VueComponent} component */ function VueElementQuery(ResizeSensor, element) { _classCallCheck(this, VueElementQuery); this.ResizeSensor = ResizeSensor; this.breakpoints = { 'min-width': [], 'max-width': [] }; this.init(element); } /** * Initialize ElementQuery by crawling stylesheets for breakpoints, * setting a resize watcher on the element, and firing the initial resize * event. * @param {HTMLElement} element * @return {void} */ _createClass(VueElementQuery, [{ key: "init", value: function init(element) { this.setBreakpoints(element); this.watchElement(element); this.setInitialResize(element); } /** * Fire the initial resize event * @param {HTMLElement} element */ }, { key: "setInitialResize", value: function setInitialResize(element) { element.resizedAttached.call(); } /** * Create a watcher on the element width * @param {HTMLElement} element * @return {void} */ }, { key: "watchElement", value: function watchElement(element) { var _this = this; new this.ResizeSensor(element, function () { element.setAttribute('min-width', _this.setMinWidth(element.clientWidth)); element.setAttribute('max-width', _this.setMaxWidth(element.clientWidth)); }); } /** * Crawl the document stylesheets and capture all breakpoints for * this element * @param {HTMLElement} element */ }, { key: "setBreakpoints", value: function setBreakpoints(element) { var _this2 = this; this.crawlStylesheets(document, function (rules) { _this2.readRules(rules, function (rule) { if (_this2.matchesScope(element, rule.selectorText)) { _this2.breakpoints[rule.selector].push(rule.value); } }); }); } /** * Determine if an element has a scoped stylesheet. This prevents * us from crawling stylesheet rules that aren't relevant. * @param @param {HTMLElement} element * @param {String} selectorText * @return {void} */ }, { key: "matchesScope", value: function matchesScope(element, selectorText) { var scope = this.getScopeTag(element); return selectorText.match(scope); } /** * Returns a regex to determine if an element is scoped * @param @param {HTMLElement} element * @param {RegExp} regex * @return {RegExp} */ }, { key: "getScopeTag", value: function getScopeTag(element) { // grab the scope tag from the element, such as `v-12jn123n123` var scope = Object.keys(element.dataset).find(function (key) { return key.match(/v-/); }); if (!scope) { throw new Error({ message: '[VueElementQuery] Vue element queries only work on scoped stylesheets. Did you forget to add `scoped` to your stylesheet?' }); } return new RegExp(scope); } /** * Set the string for the min-width attribute that will be used for element * queries. Example result: "500px 600px 900px" * @param {Number} elementWidth */ }, { key: "setMinWidth", value: function setMinWidth(elementWidth) { return this.breakpoints['min-width'].reduce(function (string, key) { return elementWidth >= key ? string + key + 'px ' : string; }, '').slice(0, -1); } /** * Set the string for the max-width attribute that will be used for element * queries. Example result: "500px 600px 900px" * @param {Number} elementWidth */ }, { key: "setMaxWidth", value: function setMaxWidth(elementWidth) { return this.breakpoints['max-width'].reduce(function (string, key) { return elementWidth <= key ? string + key + 'px ' : string; }, '').slice(0, -1); } /** * Crawl the document for stylesheets, and if valid for reading rules, * pass to a callback function with the rules as the first argument. * @param {HTMLDocument} document * @param {Function} callback * @return {void} */ }, { key: "crawlStylesheets", value: function crawlStylesheets(document, callback) { for (var i = 0, j = document.styleSheets.length; i < j; i++) { this.ifValidRules(document.styleSheets[i], callback); } } /** * Determine if the rules are valid for crawling on a stylesheet. * @param {CSSStyleSheet} stylesheet * @param {Function} callback * @return {void} */ }, { key: "ifValidRules", value: function ifValidRules(stylesheet, callback) { if (stylesheet.cssRules) { callback(stylesheet.cssRules); } } /** * Read from the list of rules and build a map * @param {CSSRuleList} rules * @return {[type]} */ }, { key: "readRules", value: function readRules(rules, callback) { this.crawlRules(rules, function (selectorText) { callback(selectorText); }); } /** * Crawl rules and execute a callback if the rule has valid * selectorText. * @param {CSSRuleList} rules * @param {Function} callback * @return {void} */ }, { key: "crawlRules", value: function crawlRules(rules, callback) { for (var i = 0, j = rules.length; i < j; i++) { if (rules[i].selectorText) this.getValidSelector(rules[i].selectorText, callback); } } /** * Check for a valid selector * @param {String} selectorText * @param {Function} callback * @return {void} */ }, { key: "getValidSelector", value: function getValidSelector(selectorText, callback) { // List of valid selectors var matches = ['min-width', 'max-width']; // Check selector for a match, and if so execute the callback. matches.forEach(function (selector) { if (selectorText.indexOf(selector) !== -1) { var regex = new RegExp("".concat(selector, "~=\"(.*)px\"]")); callback({ selectorText: selectorText, selector: selector, value: selectorText.match(regex)[1] }); } }); } }]); return VueElementQuery; }(); // EXTERNAL MODULE: ./node_modules/css-element-queries/src/ResizeSensor.js var src_ResizeSensor = __webpack_require__("KtZj"); var ResizeSensor_default = /*#__PURE__*/__webpack_require__.n(src_ResizeSensor); // CONCATENATED MODULE: ./src/index.js /* harmony default export */ var src = ({ install: function install(Vue) { Vue.directive('query', { inserted: function inserted(element) { new VueElementQuery_VueElementQuery(ResizeSensor_default.a, element); }, unbind: function unbind(element) { ResizeSensor_default.a.detach(element); } }); } }); // CONCATENATED MODULE: /Users/joel-brubaker/.nvm/versions/node/v8.11.1/lib/node_modules/@vue/cli-service-global/node_modules/@vue/cli-service/lib/commands/build/entry-lib.js /* harmony default export */ var entry_lib = __webpack_exports__["default"] = (src); /***/ }), /***/ "Yx2f": /***/ (function(module, exports, __webpack_require__) { "use strict"; var $export = __webpack_require__("t1yY"); var $forEach = __webpack_require__("2Rpf")(0); var STRICT = __webpack_require__("BPiH")([].forEach, true); $export($export.P + $export.F * !STRICT, 'Array', { // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg]) forEach: function forEach(callbackfn /* , thisArg */) { return $forEach(this, callbackfn, arguments[1]); } }); /***/ }), /***/ "Yxsw": /***/ (function(module, exports, __webpack_require__) { // to indexed object, toObject with fallback for non-array-like ES3 strings var IObject = __webpack_require__("vjA/"); var defined = __webpack_require__("XpIx"); module.exports = function (it) { return IObject(defined(it)); }; /***/ }), /***/ "b/3a": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("PUi0"); var setPrototypeOf = __webpack_require__("bGcJ").set; module.exports = function (that, target, C) { var S = target.constructor; var P; if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) { setPrototypeOf(that, P); } return that; }; /***/ }), /***/ "b3my": /***/ (function(module, exports) { var id = 0; var px = Math.random(); module.exports = function (key) { return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36)); }; /***/ }), /***/ "bGcJ": /***/ (function(module, exports, __webpack_require__) { // Works with __proto__ only. Old v8 can't work with null proto objects. /* eslint-disable no-proto */ var isObject = __webpack_require__("PUi0"); var anObject = __webpack_require__("i/GF"); var check = function (O, proto) { anObject(O); if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!"); }; module.exports = { set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line function (test, buggy, set) { try { set = __webpack_require__("pioK")(Function.call, __webpack_require__("PVSW").f(Object.prototype, '__proto__').set, 2); set(test, []); buggy = !(test instanceof Array); } catch (e) { buggy = true; } return function setPrototypeOf(O, proto) { check(O, proto); if (buggy) O.__proto__ = proto; else set(O, proto); return O; }; }({}, false) : undefined), check: check }; /***/ }), /***/ "bMrv": /***/ (function(module, exports, __webpack_require__) { module.exports = !__webpack_require__("k9+X") && !__webpack_require__("gbI/")(function () { return Object.defineProperty(__webpack_require__("eVn5")('div'), 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ "bm5Y": /***/ (function(module, exports) { module.exports = {}; /***/ }), /***/ "eVn5": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("PUi0"); var document = __webpack_require__("1wvP").document; // typeof document.createElement is 'object' in old IE var is = isObject(document) && isObject(document.createElement); module.exports = function (it) { return is ? document.createElement(it) : {}; }; /***/ }), /***/ "fRkG": /***/ (function(module, exports, __webpack_require__) { "use strict"; var $export = __webpack_require__("t1yY"); var $reduce = __webpack_require__("rXsV"); $export($export.P + $export.F * !__webpack_require__("BPiH")([].reduce, true), 'Array', { // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue]) reduce: function reduce(callbackfn /* , initialValue */) { return $reduce(this, callbackfn, arguments.length, arguments[1], false); } }); /***/ }), /***/ "fsba": /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__("wgvU"); var max = Math.max; var min = Math.min; module.exports = function (index, length) { index = toInteger(index); return index < 0 ? max(index + length, 0) : min(index, length); }; /***/ }), /***/ "gbI/": /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (e) { return true; } }; /***/ }), /***/ "i/GF": /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__("PUi0"); module.exports = function (it) { if (!isObject(it)) throw TypeError(it + ' is not an object!'); return it; }; /***/ }), /***/ "jZGP": /***/ (function(module, exports, __webpack_require__) { // @@match logic __webpack_require__("neYO")('match', 1, function (defined, MATCH, $match) { // 21.1.3.11 String.prototype.match(regexp) return [function match(regexp) { 'use strict'; var O = defined(this); var fn = regexp == undefined ? undefined : regexp[MATCH]; return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); }, $match]; }); /***/ }), /***/ "k38r": /***/ (function(module, exports, __webpack_require__) { var dP = __webpack_require__("uKfR"); var anObject = __webpack_require__("i/GF"); var getKeys = __webpack_require__("FfIX"); module.exports = __webpack_require__("k9+X") ? Object.defineProperties : function defineProperties(O, Properties) { anObject(O); var keys = getKeys(Properties); var length = keys.length; var i = 0; var P; while (length > i) dP.f(O, P = keys[i++], Properties[P]); return O; }; /***/ }), /***/ "k9+X": /***/ (function(module, exports, __webpack_require__) { // Thank's IE8 for his funny defineProperty module.exports = !__webpack_require__("gbI/")(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /***/ "m8XM": /***/ (function(module, exports, __webpack_require__) { // most Object methods by ES6 should accept primitives var $export = __webpack_require__("t1yY"); var core = __webpack_require__("vlp9"); var fails = __webpack_require__("gbI/"); module.exports = function (KEY, exec) { var fn = (core.Object || {})[KEY] || Object[KEY]; var exp = {}; exp[KEY] = exec(fn); $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp); }; /***/ }), /***/ "mPYY": /***/ (function(module, exports, __webpack_require__) { var shared = __webpack_require__("+OAr")('keys'); var uid = __webpack_require__("b3my"); module.exports = function (key) { return shared[key] || (shared[key] = uid(key)); }; /***/ }), /***/ "mpE1": /***/ (function(module, exports, __webpack_require__) { "use strict"; var LIBRARY = __webpack_require__("3h5O"); var $export = __webpack_require__("t1yY"); var redefine = __webpack_require__("tfDl"); var hide = __webpack_require__("XA8k"); var Iterators = __webpack_require__("bm5Y"); var $iterCreate = __webpack_require__("59Ib"); var setToStringTag = __webpack_require__("OIVH"); var getPrototypeOf = __webpack_require__("IQBv"); var ITERATOR = __webpack_require__("7D+n")('iterator'); var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next` var FF_ITERATOR = '@@iterator'; var KEYS = 'keys'; var VALUES = 'values'; var returnThis = function () { return this; }; module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) { $iterCreate(Constructor, NAME, next); var getMethod = function (kind) { if (!BUGGY && kind in proto) return proto[kind]; switch (kind) { case KEYS: return function keys() { return new Constructor(this, kind); }; case VALUES: return function values() { return new Constructor(this, kind); }; } return function entries() { return new Constructor(this, kind); }; }; var TAG = NAME + ' Iterator'; var DEF_VALUES = DEFAULT == VALUES; var VALUES_BUG = false; var proto = Base.prototype; var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]; var $default = $native || getMethod(DEFAULT); var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined; var $anyNative = NAME == 'Array' ? proto.entries || $native : $native; var methods, key, IteratorPrototype; // Fix native if ($anyNative) { IteratorPrototype = getPrototypeOf($anyNative.call(new Base())); if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) { // Set @@toStringTag to native iterators setToStringTag(IteratorPrototype, TAG, true); // fix for some old engines if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);