{"version":3,"sources":["webpack:///./node_modules/aurelia-pal-browser/dist/native-modules/aurelia-pal-browser.js"],"names":["_typeof","Symbol","iterator","obj","constructor","prototype","_PLATFORM","location","window","history","addEventListener","eventName","callback","capture","this","global","removeEventListener","performance","requestAnimationFrame","FEATURE_NO_IE","undefined","name","Object","defineProperty","Function","get","toString","match","value","document","createElement","createElementNS","testElement","classList","add","contains","createMethod","method","original","DOMTokenList","token","i","ii","arguments","length","call","toggle","_toggle","force","strTrim","String","trim","arrIndexOf","Array","indexOf","emptyArray","DOMEx","type","message","code","DOMException","checkTokenAndGetIndex","test","ClassList","elem","trimmedClasses","getAttribute","classes","split","push","_updateClassName","setAttribute","classListProto","Error","item","tokens","updated","remove","index","splice","result","join","Element","enumerable","configurable","_filterEntries","key","n","_entries","_clearEntries","entry","entryType","nowOffset","Date","now","timing","navigationStart","_marksIndex","mark","webkitMark","startTime","duration","measure","webkitMeasure","startMark","endMark","getEntriesByType","webkitGetEntriesByType","getEntriesByName","webkitGetEntriesByName","clearMarks","webkitClearMarks","clearMeasures","webkitClearMeasures","con","console","nop","memory","forEach","m","log","bind","CustomEvent","_CustomEvent","event","params","bubbles","cancelable","detail","evt","createEvent","initCustomEvent","Event","matches","proto","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","d","_FEATURE","shadowDOM","HTMLElement","attachShadow","scopedCSS","htmlTemplateElement","innerHTML","children","mutationObserver","MutationObserver","WebKitMutationObserver","ensureHTMLTemplateElement","t","fixSVGTemplateElement","el","template","ownerDocument","attrs","attributes","attr","parentNode","insertBefore","removeAttribute","removeChild","fixHTMLTemplateElement","content","createDocumentFragment","child","firstChild","appendChild","childTemplates","querySelectorAll","tagName","namespaceURI","shadowPoly","ShadowDOMPolyfill","_DOM","NodeList","SVGElement","boundary","adoptNode","node","createAttribute","createTextNode","text","createComment","createTemplateElement","createMutationObserver","createCustomEvent","eventType","options","dispatchEvent","getComputedStyle","element","getElementById","id","querySelector","query","nextElementSibling","nextSibling","nodeType","createTemplateFromMarkup","markup","parser","temp","firstElementChild","nodeName","appendNode","newNode","body","replaceNode","replaceChild","unwrap","removeNode","injectStyles","styles","destination","prepend","oldStyle","toLowerCase","head","childNodes","initialize","platform","feature","dom","assign","title","set","activeElement","XMLHttpRequest"],"mappings":"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","file":"npm.aurelia-pal-browser.7ab01c97cd7d01a71203.js","sourcesContent":["var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nimport { initializePAL, isInitialized } from 'aurelia-pal';\n\nexport var _PLATFORM = {\n location: window.location,\n history: window.history,\n addEventListener: function addEventListener(eventName, callback, capture) {\n this.global.addEventListener(eventName, callback, capture);\n },\n removeEventListener: function removeEventListener(eventName, callback, capture) {\n this.global.removeEventListener(eventName, callback, capture);\n },\n\n performance: window.performance,\n requestAnimationFrame: function requestAnimationFrame(callback) {\n return this.global.requestAnimationFrame(callback);\n }\n};\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n var test = function test() {};\n\n if (test.name === undefined) {\n Object.defineProperty(Function.prototype, 'name', {\n get: function get() {\n var name = this.toString().match(/^\\s*function\\s*(\\S*)\\s*\\(/)[1];\n\n Object.defineProperty(this, 'name', { value: name });\n return name;\n }\n });\n }\n}\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n if (!('classList' in document.createElement('_')) || document.createElementNS && !('classList' in document.createElementNS('http://www.w3.org/2000/svg', 'g'))) {\n var protoProp = 'prototype';\n var strTrim = String.prototype.trim;\n var arrIndexOf = Array.prototype.indexOf;\n var emptyArray = [];\n\n var DOMEx = function DOMEx(type, message) {\n this.name = type;\n this.code = DOMException[type];\n this.message = message;\n };\n\n var checkTokenAndGetIndex = function checkTokenAndGetIndex(classList, token) {\n if (token === '') {\n throw new DOMEx('SYNTAX_ERR', 'An invalid or illegal string was specified');\n }\n\n if (/\\s/.test(token)) {\n throw new DOMEx('INVALID_CHARACTER_ERR', 'String contains an invalid character');\n }\n\n return arrIndexOf.call(classList, token);\n };\n\n var ClassList = function ClassList(elem) {\n var trimmedClasses = strTrim.call(elem.getAttribute('class') || '');\n var classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : emptyArray;\n\n for (var i = 0, ii = classes.length; i < ii; ++i) {\n this.push(classes[i]);\n }\n\n this._updateClassName = function () {\n elem.setAttribute('class', this.toString());\n };\n };\n\n var classListProto = ClassList[protoProp] = [];\n\n DOMEx[protoProp] = Error[protoProp];\n\n classListProto.item = function (i) {\n return this[i] || null;\n };\n\n classListProto.contains = function (token) {\n token += '';\n return checkTokenAndGetIndex(this, token) !== -1;\n };\n\n classListProto.add = function () {\n var tokens = arguments;\n var i = 0;\n var ii = tokens.length;\n var token = void 0;\n var updated = false;\n\n do {\n token = tokens[i] + '';\n if (checkTokenAndGetIndex(this, token) === -1) {\n this.push(token);\n updated = true;\n }\n } while (++i < ii);\n\n if (updated) {\n this._updateClassName();\n }\n };\n\n classListProto.remove = function () {\n var tokens = arguments;\n var i = 0;\n var ii = tokens.length;\n var token = void 0;\n var updated = false;\n var index = void 0;\n\n do {\n token = tokens[i] + '';\n index = checkTokenAndGetIndex(this, token);\n while (index !== -1) {\n this.splice(index, 1);\n updated = true;\n index = checkTokenAndGetIndex(this, token);\n }\n } while (++i < ii);\n\n if (updated) {\n this._updateClassName();\n }\n };\n\n classListProto.toggle = function (token, force) {\n token += '';\n\n var result = this.contains(token);\n var method = result ? force !== true && 'remove' : force !== false && 'add';\n\n if (method) {\n this[method](token);\n }\n\n if (force === true || force === false) {\n return force;\n }\n\n return !result;\n };\n\n classListProto.toString = function () {\n return this.join(' ');\n };\n\n Object.defineProperty(Element.prototype, 'classList', {\n get: function get() {\n return new ClassList(this);\n },\n enumerable: true,\n configurable: true\n });\n } else {\n var testElement = document.createElement('_');\n testElement.classList.add('c1', 'c2');\n\n if (!testElement.classList.contains('c2')) {\n var createMethod = function createMethod(method) {\n var original = DOMTokenList.prototype[method];\n\n DOMTokenList.prototype[method] = function (token) {\n for (var i = 0, ii = arguments.length; i < ii; ++i) {\n token = arguments[i];\n original.call(this, token);\n }\n };\n };\n\n createMethod('add');\n createMethod('remove');\n }\n\n testElement.classList.toggle('c3', false);\n\n if (testElement.classList.contains('c3')) {\n var _toggle = DOMTokenList.prototype.toggle;\n\n DOMTokenList.prototype.toggle = function (token, force) {\n if (1 in arguments && !this.contains(token) === !force) {\n return force;\n }\n\n return _toggle.call(this, token);\n };\n }\n\n testElement = null;\n }\n}\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n var _filterEntries = function _filterEntries(key, value) {\n var i = 0,\n n = _entries.length,\n result = [];\n for (; i < n; i++) {\n if (_entries[i][key] == value) {\n result.push(_entries[i]);\n }\n }\n return result;\n };\n\n var _clearEntries = function _clearEntries(type, name) {\n var i = _entries.length,\n entry;\n while (i--) {\n entry = _entries[i];\n if (entry.entryType == type && (name === void 0 || entry.name == name)) {\n _entries.splice(i, 1);\n }\n }\n };\n\n // @license http://opensource.org/licenses/MIT\n if ('performance' in window === false) {\n window.performance = {};\n }\n\n if ('now' in window.performance === false) {\n var nowOffset = Date.now();\n\n if (performance.timing && performance.timing.navigationStart) {\n nowOffset = performance.timing.navigationStart;\n }\n\n window.performance.now = function now() {\n return Date.now() - nowOffset;\n };\n }\n\n var startOffset = Date.now ? Date.now() : +new Date();\n var _entries = [];\n var _marksIndex = {};\n\n ;\n\n if (!window.performance.mark) {\n window.performance.mark = window.performance.webkitMark || function (name) {\n var mark = {\n name: name,\n entryType: \"mark\",\n startTime: window.performance.now(),\n duration: 0\n };\n\n _entries.push(mark);\n _marksIndex[name] = mark;\n };\n }\n\n if (!window.performance.measure) {\n window.performance.measure = window.performance.webkitMeasure || function (name, startMark, endMark) {\n startMark = _marksIndex[startMark].startTime;\n endMark = _marksIndex[endMark].startTime;\n\n _entries.push({\n name: name,\n entryType: \"measure\",\n startTime: startMark,\n duration: endMark - startMark\n });\n };\n }\n\n if (!window.performance.getEntriesByType) {\n window.performance.getEntriesByType = window.performance.webkitGetEntriesByType || function (type) {\n return _filterEntries(\"entryType\", type);\n };\n }\n\n if (!window.performance.getEntriesByName) {\n window.performance.getEntriesByName = window.performance.webkitGetEntriesByName || function (name) {\n return _filterEntries(\"name\", name);\n };\n }\n\n if (!window.performance.clearMarks) {\n window.performance.clearMarks = window.performance.webkitClearMarks || function (name) {\n _clearEntries(\"mark\", name);\n };\n }\n\n if (!window.performance.clearMeasures) {\n window.performance.clearMeasures = window.performance.webkitClearMeasures || function (name) {\n _clearEntries(\"measure\", name);\n };\n }\n\n _PLATFORM.performance = window.performance;\n}\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n var con = window.console = window.console || {};\n var nop = function nop() {};\n\n if (!con.memory) con.memory = {};\n ('assert,clear,count,debug,dir,dirxml,error,exception,group,' + 'groupCollapsed,groupEnd,info,log,markTimeline,profile,profiles,profileEnd,' + 'show,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn').split(',').forEach(function (m) {\n if (!con[m]) con[m] = nop;\n });\n\n if (_typeof(con.log) === 'object') {\n 'log,info,warn,error,assert,dir,clear,profile,profileEnd'.split(',').forEach(function (method) {\n console[method] = this.bind(console[method], console);\n }, Function.prototype.call);\n }\n}\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n if (!window.CustomEvent || typeof window.CustomEvent !== 'function') {\n var _CustomEvent = function _CustomEvent(event, params) {\n params = params || {\n bubbles: false,\n cancelable: false,\n detail: undefined\n };\n\n var evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n return evt;\n };\n\n _CustomEvent.prototype = window.Event.prototype;\n window.CustomEvent = _CustomEvent;\n }\n}\n\nif (Element && !Element.prototype.matches) {\n var proto = Element.prototype;\n proto.matches = proto.matchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector || proto.webkitMatchesSelector;\n}\n\nexport var _FEATURE = {\n shadowDOM: !!HTMLElement.prototype.attachShadow,\n scopedCSS: 'scoped' in document.createElement('style'),\n htmlTemplateElement: function () {\n var d = document.createElement('div');\n d.innerHTML = '';\n return 'content' in d.children[0];\n }(),\n mutationObserver: !!(window.MutationObserver || window.WebKitMutationObserver),\n ensureHTMLTemplateElement: function ensureHTMLTemplateElement(t) {\n return t;\n }\n};\n\nif (typeof FEATURE_NO_IE === 'undefined') {\n var isSVGTemplate = function isSVGTemplate(el) {\n return el.tagName === 'template' && el.namespaceURI === 'http://www.w3.org/2000/svg';\n };\n\n var fixSVGTemplateElement = function fixSVGTemplateElement(el) {\n var template = el.ownerDocument.createElement('template');\n var attrs = el.attributes;\n var length = attrs.length;\n var attr = void 0;\n\n el.parentNode.insertBefore(template, el);\n\n while (length-- > 0) {\n attr = attrs[length];\n template.setAttribute(attr.name, attr.value);\n el.removeAttribute(attr.name);\n }\n\n el.parentNode.removeChild(el);\n\n return fixHTMLTemplateElement(template);\n };\n\n var fixHTMLTemplateElement = function fixHTMLTemplateElement(template) {\n var content = template.content = document.createDocumentFragment();\n var child = void 0;\n\n while (child = template.firstChild) {\n content.appendChild(child);\n }\n\n return template;\n };\n\n var fixHTMLTemplateElementRoot = function fixHTMLTemplateElementRoot(template) {\n var content = fixHTMLTemplateElement(template).content;\n var childTemplates = content.querySelectorAll('template');\n\n for (var i = 0, ii = childTemplates.length; i < ii; ++i) {\n var child = childTemplates[i];\n\n if (isSVGTemplate(child)) {\n fixSVGTemplateElement(child);\n } else {\n fixHTMLTemplateElement(child);\n }\n }\n\n return template;\n };\n\n if (!_FEATURE.htmlTemplateElement) {\n _FEATURE.ensureHTMLTemplateElement = fixHTMLTemplateElementRoot;\n }\n}\n\nvar shadowPoly = window.ShadowDOMPolyfill || null;\n\nexport var _DOM = {\n Element: Element,\n NodeList: NodeList,\n SVGElement: SVGElement,\n boundary: 'aurelia-dom-boundary',\n addEventListener: function addEventListener(eventName, callback, capture) {\n document.addEventListener(eventName, callback, capture);\n },\n removeEventListener: function removeEventListener(eventName, callback, capture) {\n document.removeEventListener(eventName, callback, capture);\n },\n adoptNode: function adoptNode(node) {\n return document.adoptNode(node);\n },\n createAttribute: function createAttribute(name) {\n return document.createAttribute(name);\n },\n createElement: function createElement(tagName) {\n return document.createElement(tagName);\n },\n createTextNode: function createTextNode(text) {\n return document.createTextNode(text);\n },\n createComment: function createComment(text) {\n return document.createComment(text);\n },\n createDocumentFragment: function createDocumentFragment() {\n return document.createDocumentFragment();\n },\n createTemplateElement: function createTemplateElement() {\n var template = document.createElement('template');\n return _FEATURE.ensureHTMLTemplateElement(template);\n },\n createMutationObserver: function createMutationObserver(callback) {\n return new (window.MutationObserver || window.WebKitMutationObserver)(callback);\n },\n createCustomEvent: function createCustomEvent(eventType, options) {\n return new window.CustomEvent(eventType, options);\n },\n dispatchEvent: function dispatchEvent(evt) {\n document.dispatchEvent(evt);\n },\n getComputedStyle: function getComputedStyle(element) {\n return window.getComputedStyle(element);\n },\n getElementById: function getElementById(id) {\n return document.getElementById(id);\n },\n querySelector: function querySelector(query) {\n return document.querySelector(query);\n },\n querySelectorAll: function querySelectorAll(query) {\n return document.querySelectorAll(query);\n },\n nextElementSibling: function nextElementSibling(element) {\n if (element.nextElementSibling) {\n return element.nextElementSibling;\n }\n do {\n element = element.nextSibling;\n } while (element && element.nodeType !== 1);\n return element;\n },\n createTemplateFromMarkup: function createTemplateFromMarkup(markup) {\n var parser = document.createElement('div');\n parser.innerHTML = markup;\n\n var temp = parser.firstElementChild;\n if (!temp || temp.nodeName !== 'TEMPLATE') {\n throw new Error('Template markup must be wrapped in a