{"version":3,"file":"AE.polyfill.min.js","sources":["AE.polyfill.min.js"],"sourcesContent":["/*https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every*/\nif ( !Array.prototype.every ) {\n Array.prototype.every = function ( callbackfn, thisArg ) {\n 'use strict';\n var T, k;\n if ( this == null ) {\n throw new TypeError( 'this is null or not defined' );\n }\n var O = Object( this );\n var len = O.length >>> 0;\n if ( typeof callbackfn !== 'function' ) {\n throw new TypeError();\n }\n if ( arguments.length > 1 ) {\n T = thisArg;\n }\n k = 0;\n while ( k < len ) {\n var kValue;\n if ( k in O ) {\n kValue = O[ k ];\n var testResult = callbackfn.call( T, kValue, k, O );\n if ( !testResult ) {\n return false;\n }\n }\n k++;\n }\n return true;\n };\n}\n\n/*https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter*/\nif ( !Array.prototype.filter )\n Array.prototype.filter = function ( func, thisArg ) {\n 'use strict';\n if ( !( ( typeof func === 'Function' || typeof func === 'function' ) && this ) )\n throw new TypeError();\n var len = this.length >>> 0,\n res = new Array( len ),\n t = this,\n c = 0,\n i = -1;\n if ( thisArg === undefined )\n while ( ++i !== len )\n if ( i in this )\n if ( func( t[ i ], i, t ) )\n res[ c++ ] = t[ i ];\n else\n while ( ++i !== len )\n if ( i in this )\n if ( func.call( thisArg, t[ i ], i, t ) )\n res[ c++ ] = t[ i ];\n res.length = c;\n return res;\n };\n\n/* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach\n* Production steps of ECMA-262, Edition 5, 15.4.4.18\n* Reference: http://es5.github.io/#x15.4.4.18\n*/\nif ( !Array.prototype.forEach ) {\n Array.prototype.forEach = function ( callback /*, thisArg*/ ) {\n 'use strict';\n var T, k;\n if ( this == null ) {\n throw new TypeError( 'this is null or not defined' );\n }\n var O = Object( this );\n var len = O.length >>> 0;\n if ( typeof callback !== 'function' ) {\n throw new TypeError( callback + ' is not a function' );\n }\n if ( arguments.length > 1 ) {\n T = arguments[ 1 ];\n }\n k = 0;\n while ( k < len ) {\n var kValue;\n if ( k in O ) {\n kValue = O[ k ];\n callback.call( T, kValue, k, O );\n }\n k++;\n }\n };\n}\n\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes\n/*\n * array.includes polyfill\n */\nif (!Array.prototype.includes) {\n Object.defineProperty(Array.prototype, 'includes', {\n value: function (searchElement, fromIndex) {\n\n if (this == null) throw new TypeError('\"this\" is null or not defined');\n\n var o = Object(this);\n var len = o.length >>> 0;\n\n if (len === 0) return false;\n\n var n = fromIndex | 0;\n var k = Math.max(n >= 0 ? n : len - Math.abs(n), 0);\n\n function sameValueZero(x, y) {\n return x === y || (typeof x === 'number' && typeof y === 'number' && isNaN(x) && isNaN(y));\n }\n\n while (k < len) {\n if (sameValueZero(o[k], searchElement)) return true;\n k++;\n }\n\n return false;\n }\n });\n}\n /* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf#Compatibility*/\n if ( !Array.prototype.indexOf ) {\n Array.prototype.indexOf = function ( vMember, nStartFrom ) {\n 'use strict';\n if ( this == null ) {\n throw new TypeError( \"Array.prototype.indexOf() - can't convert `\" + this + \"` to object\" );\n }\n var nIdx = isFinite( nStartFrom ) ? Math.floor( nStartFrom ) : 0,\n oThis = this instanceof Object ? this : new Object( this ),\n nLen = isFinite( oThis.length ) ? Math.floor( oThis.length ) : 0;\n\n if ( nIdx >= nLen ) {\n return -1;\n }\n\n if ( nIdx < 0 ) {\n nIdx = Math.max( nLen + nIdx, 0 );\n }\n\n if ( vMember === undefined ) {\n do {\n if ( nIdx in oThis && oThis[ nIdx ] === undefined ) {\n return nIdx;\n }\n } while ( ++nIdx < nLen );\n } else {\n do {\n if ( oThis[ nIdx ] === vMember ) {\n return nIdx;\n }\n } while ( ++nIdx < nLen );\n }\n return -1;\n };\n }\n\n /* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map\n * Production steps of ECMA-262, Edition 5, 15.4.4.19\n * Reference: http://es5.github.io/#x15.4.4.19\n */\n if ( !Array.prototype.map ) {\n Array.prototype.map = function ( callback /*, thisArg*/ ) {\n 'use strict';\n var T, A, k;\n if ( this == null ) {\n throw new TypeError( 'this is null or not defined' );\n }\n var O = Object( this );\n var len = O.length >>> 0;\n if ( typeof callback !== 'function' ) {\n throw new TypeError( callback + ' is not a function' );\n }\n if ( arguments.length > 1 ) {\n T = arguments[ 1 ];\n }\n\n A = new Array( len );\n k = 0;\n while ( k < len ) {\n\n var kValue, mappedValue;\n if ( k in O ) {\n kValue = O[ k ];\n mappedValue = callback.call( T, kValue, k, O );\n A[ k ] = mappedValue;\n }\n k++;\n }\n return A;\n };\n }\n\n/*! loadCSS. [c]2017 Filament Group, Inc. MIT License */\n/*\nhttps://github.com/filamentgroup/loadCSS/blob/master/src/cssrelpreload.jsThis file is meant as a standalone workflow for\n- testing support for link[rel=preload]\n- enabling async CSS loading in browsers that do not support rel=preload\n- applying rel preload css once loaded, whether supported or not.\n*/\n( function ( w ) {\n \"use strict\";\n // rel=preload support test\n if ( !w.loadCSS ) {\n w.loadCSS = function () {};\n }\n // define on the loadCSS obj\n var rp = loadCSS.relpreload = {};\n // rel=preload feature support test\n // runs once and returns a function for compat purposes\n rp.support = ( function () {\n var ret;\n try {\n ret = w.document.createElement( \"link\" ).relList.supports( \"preload\" );\n } catch ( e ) {\n ret = false;\n }\n return function () {\n return ret;\n };\n } )();\n\n // if preload isn't supported, get an asynchronous load by using a non-matching media attribute\n // then change that media back to its intended value on load\n rp.bindMediaToggle = function ( link ) {\n // remember existing media attr for ultimate state, or default to 'all'\n var finalMedia = link.media || \"all\";\n\n function enableStylesheet() {\n link.media = finalMedia;\n }\n\n // bind load handlers to enable media\n if ( link.addEventListener ) {\n link.addEventListener( \"load\", enableStylesheet );\n } else if ( link.attachEvent ) {\n link.attachEvent( \"onload\", enableStylesheet );\n }\n\n // Set rel and non-applicable media type to start an async request\n // note: timeout allows this to happen async to let rendering continue in IE\n setTimeout( function () {\n link.rel = \"stylesheet\";\n link.media = \"only x\";\n } );\n // also enable media after 3 seconds,\n // which will catch very old browsers (android 2.x, old firefox) that don't support onload on link\n setTimeout( enableStylesheet, 3000 );\n };\n\n // loop through link elements in DOM\n rp.poly = function () {\n // double check this to prevent external calls from running\n if ( rp.support() ) {\n return;\n }\n var links = w.document.getElementsByTagName( \"link\" );\n for ( var i = 0; i < links.length; i++ ) {\n var link = links[ i ];\n // qualify links to those with rel=preload and as=style attrs\n if ( link.rel === \"preload\" && link.getAttribute( \"as\" ) === \"style\" && !link.getAttribute( \"data-loadcss\" ) ) {\n // prevent rerunning on link\n link.setAttribute( \"data-loadcss\", true );\n // bind listeners to toggle media back\n rp.bindMediaToggle( link );\n }\n }\n };\n\n // if unsupported, run the polyfill\n if ( !rp.support() ) {\n // run once at least\n rp.poly();\n\n // rerun poly on an interval until onload\n var run = w.setInterval( rp.poly, 500 );\n if ( w.addEventListener ) {\n w.addEventListener( \"load\", function () {\n rp.poly();\n w.clearInterval( run );\n } );\n } else if ( w.attachEvent ) {\n w.attachEvent( \"onload\", function () {\n rp.poly();\n w.clearInterval( run );\n } );\n }\n }\n\n // commonjs\n if ( typeof exports !== \"undefined\" ) {\n exports.loadCSS = loadCSS;\n } else {\n w.loadCSS = loadCSS;\n }\n}( typeof global !== \"undefined\" ? global : this ) );\n\nif ( !Date.now ) {\n Date.now = function now() {\n return new Date().getTime();\n };\n}\n\n/*https://gist.github.com/jonathantneal/3748027*/\n!window.addEventListener && (function (WindowPrototype, DocumentPrototype, ElementPrototype, addEventListener, removeEventListener, dispatchEvent, registry) {\n\tWindowPrototype[addEventListener] = DocumentPrototype[addEventListener] = ElementPrototype[addEventListener] = function (type, listener) {\n\t\tvar target = this;\n\n\t\tregistry.unshift([target, type, listener, function (event) {\n\t\t\tevent.currentTarget = target;\n\t\t\tevent.preventDefault = function () { event.returnValue = false };\n\t\t\tevent.stopPropagation = function () { event.cancelBubble = true };\n\t\t\tevent.target = event.srcElement || target;\n\n\t\t\tlistener.call(target, event);\n\t\t}]);\n\n\t\tthis.attachEvent(\"on\" + type, registry[0][3]);\n\t};\n\n\tWindowPrototype[removeEventListener] = DocumentPrototype[removeEventListener] = ElementPrototype[removeEventListener] = function (type, listener) {\n\t\tfor (var index = 0, register; register = registry[index]; ++index) {\n\t\t\tif (register[0] == this && register[1] == type && register[2] == listener) {\n\t\t\t\treturn this.detachEvent(\"on\" + type, registry.splice(index, 1)[0][3]);\n\t\t\t}\n\t\t}\n\t};\n\n\tWindowPrototype[dispatchEvent] = DocumentPrototype[dispatchEvent] = ElementPrototype[dispatchEvent] = function (eventObject) {\n\t\treturn this.fireEvent(\"on\" + eventObject.type, eventObject);\n\t};\n})(Window.prototype, HTMLDocument.prototype, Element.prototype, \"addEventListener\", \"removeEventListener\", \"dispatchEvent\", []);\n\n/* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create */\nif ( typeof Object.create !== \"function\" ) {\n Object.create = function ( proto, propertiesObject ) {\n 'use strict';\n if ( typeof proto !== 'object' && typeof proto !== 'function' ) {\n throw new TypeError( 'Object prototype may only be an Object: ' + proto );\n } else if ( proto === null ) {\n throw new Error( \"This browser's implementation of Object.create is a shim and doesn't support 'null' as the first argument.\" );\n }\n\n if ( typeof propertiesObject != 'undefined' ) {\n throw new Error( \"This browser's implementation of Object.create is a shim and doesn't support a second argument.\" );\n }\n\n function F() {}\n F.prototype = proto;\n\n return new F();\n };\n}\n\n/* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys */\n// From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys\nif ( !Object.keys ) {\n Object.keys = ( function () {\n 'use strict';\n var hasOwnProperty = Object.prototype.hasOwnProperty,\n hasDontEnumBug = !( { toString: null } ).propertyIsEnumerable( 'toString' ),\n dontEnums = [\n 'toString',\n 'toLocaleString',\n 'valueOf',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'constructor'\n ],\n dontEnumsLength = dontEnums.length;\n\n return function ( obj ) {\n if ( typeof obj !== 'function' && ( typeof obj !== 'object' || obj === null ) ) {\n throw new TypeError( 'Object.keys called on non-object' );\n }\n\n var result = [],\n prop, i;\n\n for ( prop in obj ) {\n if ( hasOwnProperty.call( obj, prop ) ) {\n result.push( prop );\n }\n }\n\n if ( hasDontEnumBug ) {\n for ( i = 0; i < dontEnumsLength; i++ ) {\n if ( hasOwnProperty.call( obj, dontEnums[ i ] ) ) {\n result.push( dontEnums[ i ] );\n }\n }\n }\n return result;\n };\n }() );\n}\n\n/*\n * object.isEmpty polyfill\n *\n * Checks if an array contains some elements\n * @return { Boolean } true: the array is empty\n */\nif (!Object.prototype.isEmpty) {\n\tObject.defineProperty(Object.prototype, \"isEmpty\", {\n\t\tenumerable: false,\n\t\tconfigurable: true,\n\t\twritable: true,\n\t\tvalue: function () {\n\t\t\t\t\tfor (var key in this) {\n\t\t\t\t\t\tif (this.hasOwnProperty(key))\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\treturn true;\n\t\t}\n\t});\n}\n/*\n * object.watch polyfill\n */\nif ( !Object.prototype.watch ) {\n Object.defineProperty( Object.prototype, \"watch\", {\n enumerable: false,\n configurable: true,\n writable: false,\n value: function ( prop, handler ) {\n var oldval = this[ prop ],\n newval = oldval,\n getter = function () {\n return newval;\n },\n setter = function ( val ) {\n oldval = newval;\n return newval = handler.call( this, prop, oldval, val );\n };\n\n if ( delete this[ prop ] ) {\n Object.defineProperty( this, prop, { get: getter, set: setter, enumerable: true, configurable: true } );\n }\n }\n } );\n}\n\n/*\n * object.unwatch polyfill\n */\nif ( !Object.prototype.unwatch ) {\n Object.defineProperty( Object.prototype, \"unwatch\", {\n enumerable: false,\n configurable: true,\n writable: false,\n value: function ( prop ) {\n var val = this[ prop ];\n delete this[ prop ];\n this[ prop ] = val;\n }\n } );\n}\n\nif ( 'serviceWorker' in navigator ) {\n\n if ( !Cache.prototype.add ) {\n Cache.prototype.add = function add(request) {\n return this.addAll([request]);\n };\n }\n\n if (!Cache.prototype.addAll) {\n Cache.prototype.addAll = function addAll(requests) {\n var cache = this;\n\n // Since DOMExceptions are not constructable:\n function NetworkError(message) {\n this.name = 'NetworkError';\n this.code = 19;\n this.message = message;\n }\n NetworkError.prototype = Object.create(Error.prototype);\n\n return Promise.resolve().then(function () {\n if (arguments.length < 1) throw new TypeError();\n\n // Simulate sequence<(Request or USVString)> binding:\n var sequence = [];\n\n requests = requests.map(function (request) {\n if (request instanceof Request) {\n return request;\n } else {\n return String(request); // may throw TypeError\n }\n });\n\n return Promise.all(\n requests.map(function (request) {\n if (typeof request === 'string') {\n request = new Request(request);\n }\n\n var scheme = new URL(request.url).protocol;\n\n if (scheme !== 'http:' && scheme !== 'https:') {\n throw new NetworkError(\"Invalid scheme\");\n }\n\n return fetch(request.clone());\n })\n );\n }).then(function (responses) {\n // TODO: check that requests don't overwrite one another\n // (don't think this is possible to polyfill due to opaque responses)\n return Promise.all(\n responses.map(function (response, i) {\n return cache.put(requests[i], response);\n })\n );\n }).then(function () {\n return undefined;\n });\n };\n }\n\n if (!CacheStorage.prototype.match) {\n // This is probably vulnerable to race conditions (removing caches etc)\n CacheStorage.prototype.match = function match(request, opts) {\n var caches = this;\n\n return this.keys().then(function (cacheNames) {\n var match;\n\n return cacheNames.reduce(function (chain, cacheName) {\n return chain.then(function () {\n return match || caches.open(cacheName).then(function (cache) {\n return cache.match(request, opts);\n }).then(function (response) {\n match = response;\n return match;\n });\n });\n }, Promise.resolve());\n });\n };\n }\n if (!Cache.prototype.add) {\n Cache.prototype.add = function add(request) {\n return this.addAll([request]);\n };\n }\n\n if (!Cache.prototype.addAll) {\n Cache.prototype.addAll = function addAll(requests) {\n var cache = this;\n\n // Since DOMExceptions are not constructable:\n function NetworkError(message) {\n this.name = 'NetworkError';\n this.code = 19;\n this.message = message;\n }\n NetworkError.prototype = Object.create(Error.prototype);\n\n return Promise.resolve().then(function () {\n if (arguments.length < 1) throw new TypeError();\n\n // Simulate sequence<(Request or USVString)> binding:\n var sequence = [];\n\n requests = requests.map(function (request) {\n if (request instanceof Request) {\n return request;\n } else {\n return String(request); // may throw TypeError\n }\n });\n\n return Promise.all(\n requests.map(function (request) {\n if (typeof request === 'string') {\n request = new Request(request);\n }\n\n var scheme = new URL(request.url).protocol;\n\n if (scheme !== 'http:' && scheme !== 'https:') {\n throw new NetworkError(\"Invalid scheme\");\n }\n\n return fetch(request.clone());\n })\n );\n }).then(function (responses) {\n // TODO: check that requests don't overwrite one another\n // (don't think this is possible to polyfill due to opaque responses)\n return Promise.all(\n responses.map(function (response, i) {\n return cache.put(requests[i], response);\n })\n );\n }).then(function () {\n return undefined;\n });\n };\n }\n\n if (!CacheStorage.prototype.match) {\n // This is probably vulnerable to race conditions (removing caches etc)\n CacheStorage.prototype.match = function match(request, opts) {\n var caches = this;\n\n return this.keys().then(function (cacheNames) {\n var match;\n\n return cacheNames.reduce(function (chain, cacheName) {\n return chain.then(function () {\n return match || caches.open(cacheName).then(function (cache) {\n return cache.match(request, opts);\n }).then(function (response) {\n match = response;\n return match;\n });\n });\n }, Promise.resolve());\n });\n };\n }\n if (!Cache.prototype.add) {\n Cache.prototype.add = function add(request) {\n return this.addAll([request]);\n };\n }\n\n if (!Cache.prototype.addAll) {\n Cache.prototype.addAll = function addAll(requests) {\n var cache = this;\n\n // Since DOMExceptions are not constructable:\n function NetworkError(message) {\n this.name = 'NetworkError';\n this.code = 19;\n this.message = message;\n }\n NetworkError.prototype = Object.create(Error.prototype);\n\n return Promise.resolve().then(function () {\n if (arguments.length < 1) throw new TypeError();\n\n // Simulate sequence<(Request or USVString)> binding:\n var sequence = [];\n\n requests = requests.map(function (request) {\n if (request instanceof Request) {\n return request;\n } else {\n return String(request); // may throw TypeError\n }\n });\n\n return Promise.all(\n requests.map(function (request) {\n if (typeof request === 'string') {\n request = new Request(request);\n }\n\n var scheme = new URL(request.url).protocol;\n\n if (scheme !== 'http:' && scheme !== 'https:') {\n throw new NetworkError(\"Invalid scheme\");\n }\n\n return fetch(request.clone());\n })\n );\n }).then(function (responses) {\n // TODO: check that requests don't overwrite one another\n // (don't think this is possible to polyfill due to opaque responses)\n return Promise.all(\n responses.map(function (response, i) {\n return cache.put(requests[i], response);\n })\n );\n }).then(function () {\n return undefined;\n });\n };\n }\n\n if (!CacheStorage.prototype.match) {\n // This is probably vulnerable to race conditions (removing caches etc)\n CacheStorage.prototype.match = function match(request, opts) {\n var caches = this;\n\n return this.keys().then(function (cacheNames) {\n var match;\n\n return cacheNames.reduce(function (chain, cacheName) {\n return chain.then(function () {\n return match || caches.open(cacheName).then(function (cache) {\n return cache.match(request, opts);\n }).then(function (response) {\n match = response;\n return match;\n });\n });\n }, Promise.resolve());\n });\n };\n }\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\nif ( !String.prototype.includes ) {\n String.prototype.includes = function ( search, start ) {\n 'use strict';\n if ( typeof start !== 'number' ) start = 0;\n return !( start + search.length > this.length ) ? this.indexOf( search, start ) !== -1 : false;\n };\n}\n\n/* https://tosbourn.com/a-fix-for-window-location-origin-in-internet-explorer/ */\nif (!window.location.origin) {\n window.location.origin = window.location.protocol + \"//\" + window.location.hostname + (window.location.port ? ':' + window.location.port : '');\n}\n/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas, David Knight. MIT license */\n\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\n/*! matchMedia() polyfill addListener/removeListener extension. Author & copyright (c) 2012: Scott Jehl. MIT license */\n(function(){\n // Bail out for browsers that have addListener support\n if (window.matchMedia && window.matchMedia('all').addListener) {\n return false;\n }\n\n var localMatchMedia = window.matchMedia,\n hasMediaQueries = localMatchMedia('only all').matches,\n isListening = false,\n timeoutID = 0, // setTimeout for debouncing 'handleChange'\n queries = [], // Contains each 'mql' and associated 'listeners' if 'addListener' is used\n handleChange = function(evt) {\n // Debounce\n clearTimeout(timeoutID);\n\n timeoutID = setTimeout(function() {\n for (var i = 0, il = queries.length; i < il; i++) {\n var mql = queries[i].mql,\n listeners = queries[i].listeners || [],\n matches = localMatchMedia(mql.media).matches;\n\n // Update mql.matches value and call listeners\n // Fire listeners only if transitioning to or from matched state\n if (matches !== mql.matches) {\n mql.matches = matches;\n\n for (var j = 0, jl = listeners.length; j < jl; j++) {\n listeners[j].call(window, mql);\n }\n }\n }\n }, 30);\n };\n\n window.matchMedia = function(media) {\n var mql = localMatchMedia(media),\n listeners = [],\n index = 0;\n\n mql.addListener = function(listener) {\n // Changes would not occur to css media type so return now (Affects IE <= 8)\n if (!hasMediaQueries) {\n return;\n }\n\n // Set up 'resize' listener for browsers that support CSS3 media queries (Not for IE <= 8)\n // There should only ever be 1 resize listener running for performance\n if (!isListening) {\n isListening = true;\n window.addEventListener('resize', handleChange, true);\n }\n\n // Push object only if it has not been pushed already\n if (index === 0) {\n index = queries.push({\n mql : mql,\n listeners : listeners\n });\n }\n\n listeners.push(listener);\n };\n\n mql.removeListener = function(listener) {\n for (var i = 0, il = listeners.length; i < il; i++){\n if (listeners[i] === listener){\n listeners.splice(i, 1);\n }\n }\n };\n\n return mql;\n };\n}());\n"],"names":["Array","prototype","every","callbackfn","thisArg","T","k","this","TypeError","O","Object","len","length","arguments","kValue","call","filter","func","res","t","c","i","undefined","forEach","callback","includes","defineProperty","value","searchElement","fromIndex","o","x","y","n","Math","max","abs","isNaN","indexOf","vMember","nStartFrom","nIdx","isFinite","floor","oThis","nLen","map","A","mappedValue","w","loadCSS","run","rp","relpreload","support","ret","document","createElement","relList","supports","e","bindMediaToggle","link","finalMedia","media","enableStylesheet","addEventListener","attachEvent","setTimeout","rel","poly","links","getElementsByTagName","getAttribute","setAttribute","setInterval","clearInterval","exports","global","Date","now","getTime","window","WindowPrototype","DocumentPrototype","ElementPrototype","registry","type","listener","target","unshift","event","currentTarget","preventDefault","returnValue","stopPropagation","cancelBubble","srcElement","register","index","detachEvent","splice","eventObject","fireEvent","Window","HTMLDocument","Element","create","proto","propertiesObject","Error","F","keys","hasOwnProperty","hasDontEnumBug","toString","propertyIsEnumerable","dontEnums","dontEnumsLength","obj","prop","result","push","isEmpty","enumerable","configurable","writable","key","watch","handler","oldval","newval","get","set","val","unwatch","navigator","Cache","add","request","addAll","requests","cache","NetworkError","message","name","code","Promise","resolve","then","Request","String","all","scheme","URL","url","protocol","fetch","clone","responses","response","put","CacheStorage","match","opts","caches","cacheNames","reduce","chain","cacheName","open","search","start","location","origin","hostname","port","matchMedia","style","script","info","styleMedia","id","parentNode","insertBefore","head","appendChild","getComputedStyle","currentStyle","matchMedium","text","styleSheet","cssText","textContent","width","matches","localMatchMedia","hasMediaQueries","isListening","timeoutID","queries","handleChange","addListener","evt","clearTimeout","il","mql","listeners","j","jl","removeListener"],"mappings":"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"}