{"version":3,"file":"vendors-bff14f0d.xxxxxxxx.bundle.js","mappings":"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","sources":["webpack://iadviser/./node_modules/aurelia-loader-webpack/dist/native-modules/aurelia-loader-webpack.js","webpack://iadviser/./node_modules/aurelia-loader/dist/native-modules/aurelia-loader.js","webpack://iadviser/./node_modules/aurelia-logging-console/dist/native-modules/aurelia-logging-console.js","webpack://iadviser/./node_modules/aurelia-logging/dist/native-modules/aurelia-logging.js","webpack://iadviser/./node_modules/aurelia-metadata/dist/native-modules/aurelia-metadata.js","webpack://iadviser/./node_modules/aurelia-pal-browser/dist/native-modules/aurelia-pal-browser.js","webpack://iadviser/./node_modules/aurelia-pal/dist/native-modules/aurelia-pal.js","webpack://iadviser/./node_modules/aurelia-path/dist/native-modules/aurelia-path.js"],"sourcesContent":["import { Loader } from 'aurelia-loader';\nimport { Origin } from 'aurelia-metadata';\nimport { PLATFORM, DOM } from 'aurelia-pal';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\n\n/**\r\n* An implementation of the TemplateLoader interface implemented with text-based loading.\r\n*/\r\nvar TextTemplateLoader = /** @class */ (function () {\r\n function TextTemplateLoader() {\r\n }\r\n /**\r\n * Loads a template.\r\n * @param loader The loader that is requesting the template load.\r\n * @param entry The TemplateRegistryEntry to load and populate with a template.\r\n * @return A promise which resolves when the TemplateRegistryEntry is loaded with a template.\r\n */\r\n TextTemplateLoader.prototype.loadTemplate = function (loader, entry) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var text;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, loader.loadText(entry.address)];\r\n case 1:\r\n text = _a.sent();\r\n entry.template = DOM.createTemplateFromMarkup(text);\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n return TextTemplateLoader;\r\n}());\r\nfunction ensureOriginOnExports(moduleExports, moduleId) {\r\n var target = moduleExports;\r\n var key;\r\n var exportedValue;\r\n if (target.__useDefault) {\r\n target = target.default;\r\n }\r\n Origin.set(target, new Origin(moduleId, 'default'));\r\n if (typeof target === 'object') {\r\n for (key in target) {\r\n exportedValue = target[key];\r\n if (typeof exportedValue === 'function') {\r\n Origin.set(exportedValue, new Origin(moduleId, key));\r\n }\r\n }\r\n }\r\n return moduleExports;\r\n}\r\n/**\r\n* A default implementation of the Loader abstraction which works with webpack (extended common-js style).\r\n*/\r\nvar WebpackLoader = /** @class */ (function (_super) {\r\n __extends(WebpackLoader, _super);\r\n function WebpackLoader() {\r\n var _this = _super.call(this) || this;\r\n _this.moduleRegistry = Object.create(null);\r\n _this.loaderPlugins = Object.create(null);\r\n _this.modulesBeingLoaded = new Map();\r\n _this.useTemplateLoader(new TextTemplateLoader());\r\n _this.addPlugin('template-registry-entry', {\r\n fetch: function (moduleId) { return __awaiter(_this, void 0, void 0, function () {\r\n var HmrContext, entry;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n // HMR:\r\n if (module.hot) {\r\n if (!this.hmrContext) {\r\n HmrContext = require('aurelia-hot-module-reload').HmrContext;\r\n this.hmrContext = new HmrContext(this);\r\n }\r\n module.hot.accept(moduleId, function () { return __awaiter(_this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.hmrContext.handleViewChange(moduleId)];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n }); });\r\n }\r\n entry = this.getOrCreateTemplateRegistryEntry(moduleId);\r\n if (!!entry.templateIsLoaded) return [3 /*break*/, 2];\r\n return [4 /*yield*/, this.templateLoader.loadTemplate(this, entry)];\r\n case 1:\r\n _a.sent();\r\n _a.label = 2;\r\n case 2: return [2 /*return*/, entry];\r\n }\r\n });\r\n }); }\r\n });\r\n PLATFORM.eachModule = function (callback) {\r\n var registry = __webpack_require__.c;\r\n var cachedModuleIds = Object.getOwnPropertyNames(registry);\r\n cachedModuleIds\r\n // Note: we use .some here like a .forEach that can be \"break\"ed out of.\r\n // It will stop iterating only when a truthy value is returned.\r\n // Even though the docs say \"true\" explicitly, loader-default also goes by truthy\r\n // and this is to keep it consistent with that.\r\n .some(function (moduleId) {\r\n var moduleExports = registry[moduleId].exports;\r\n if (typeof moduleExports === 'object') {\r\n return callback(moduleId, moduleExports);\r\n }\r\n return false;\r\n });\r\n };\r\n return _this;\r\n }\r\n WebpackLoader.prototype._import = function (address, defaultHMR) {\r\n if (defaultHMR === void 0) { defaultHMR = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var addressParts, moduleId, loaderPlugin, plugin_1, asyncModuleId, callback;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n addressParts = address.split('!');\r\n moduleId = addressParts.splice(addressParts.length - 1, 1)[0];\r\n loaderPlugin = addressParts.length === 1 ? addressParts[0] : null;\r\n if (!loaderPlugin) return [3 /*break*/, 2];\r\n plugin_1 = this.loaderPlugins[loaderPlugin];\r\n if (!plugin_1) {\r\n throw new Error(\"Plugin \" + loaderPlugin + \" is not registered in the loader.\");\r\n }\r\n if (module.hot && plugin_1.hot) {\r\n module.hot.accept(moduleId, function () { return plugin_1.hot(moduleId); });\r\n }\r\n return [4 /*yield*/, plugin_1.fetch(moduleId)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n if (__webpack_require__.m[moduleId]) {\r\n if (defaultHMR && module.hot && this.hmrContext) {\r\n module.hot.accept(moduleId, function () { return _this.hmrContext.handleModuleChange(moduleId, module.hot); });\r\n }\r\n return [2 /*return*/, __webpack_require__(moduleId)];\r\n }\r\n asyncModuleId = \"async!\" + moduleId;\r\n if (!__webpack_require__.m[asyncModuleId]) return [3 /*break*/, 4];\r\n if (defaultHMR && module.hot && this.hmrContext) {\r\n module.hot.accept(moduleId, function () { return _this.hmrContext.handleModuleChange(moduleId, module.hot); });\r\n module.hot.accept(asyncModuleId, function () { return _this.hmrContext.handleModuleChange(moduleId, module.hot); });\r\n }\r\n callback = __webpack_require__(asyncModuleId);\r\n return [4 /*yield*/, new Promise(callback)];\r\n case 3: return [2 /*return*/, _a.sent()];\r\n case 4: throw new Error(\"Unable to find module with ID: \" + moduleId);\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Maps a module id to a source.\r\n * @param id The module id.\r\n * @param source The source to map the module to.\r\n */\r\n WebpackLoader.prototype.map = function (id, source) { };\r\n /**\r\n * Normalizes a module id.\r\n * @param moduleId The module id to normalize.\r\n * @param relativeTo What the module id should be normalized relative to.\r\n * @return The normalized module id.\r\n */\r\n WebpackLoader.prototype.normalizeSync = function (moduleId, relativeTo) {\r\n return moduleId;\r\n };\r\n /**\r\n * Normalizes a module id.\r\n * @param moduleId The module id to normalize.\r\n * @param relativeTo What the module id should be normalized relative to.\r\n * @return The normalized module id.\r\n */\r\n WebpackLoader.prototype.normalize = function (moduleId, relativeTo) {\r\n return Promise.resolve(moduleId);\r\n };\r\n /**\r\n * Instructs the loader to use a specific TemplateLoader instance for loading templates\r\n * @param templateLoader The instance of TemplateLoader to use for loading templates.\r\n */\r\n WebpackLoader.prototype.useTemplateLoader = function (templateLoader) {\r\n this.templateLoader = templateLoader;\r\n };\r\n /**\r\n * Loads a collection of modules.\r\n * @param ids The set of module ids to load.\r\n * @return A Promise for an array of loaded modules.\r\n */\r\n WebpackLoader.prototype.loadAllModules = function (ids) {\r\n var _this = this;\r\n return Promise.all(ids.map(function (id) { return _this.loadModule(id); }));\r\n };\r\n /**\r\n * Loads a module.\r\n * @param moduleId The module ID to load.\r\n * @return A Promise for the loaded module.\r\n */\r\n WebpackLoader.prototype.loadModule = function (moduleId, defaultHMR) {\r\n if (defaultHMR === void 0) { defaultHMR = true; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var existing, beingLoaded, moduleExports;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n existing = this.moduleRegistry[moduleId];\r\n if (existing) {\r\n return [2 /*return*/, existing];\r\n }\r\n beingLoaded = this.modulesBeingLoaded.get(moduleId);\r\n if (beingLoaded) {\r\n return [2 /*return*/, beingLoaded];\r\n }\r\n beingLoaded = this._import(moduleId, defaultHMR);\r\n this.modulesBeingLoaded.set(moduleId, beingLoaded);\r\n return [4 /*yield*/, beingLoaded];\r\n case 1:\r\n moduleExports = _a.sent();\r\n this.moduleRegistry[moduleId] = ensureOriginOnExports(moduleExports, moduleId);\r\n this.modulesBeingLoaded.delete(moduleId);\r\n return [2 /*return*/, moduleExports];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Loads a template.\r\n * @param url The url of the template to load.\r\n * @return A Promise for a TemplateRegistryEntry containing the template.\r\n */\r\n WebpackLoader.prototype.loadTemplate = function (url) {\r\n return this.loadModule(this.applyPluginToUrl(url, 'template-registry-entry'), false);\r\n };\r\n /**\r\n * Loads a text-based resource.\r\n * @param url The url of the text file to load.\r\n * @return A Promise for text content.\r\n */\r\n WebpackLoader.prototype.loadText = function (url) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var result, defaultExport;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.loadModule(url, false)];\r\n case 1:\r\n result = _a.sent();\r\n defaultExport = result && result.__esModule ? result.default : result;\r\n if (this.isCssLoaderModule(defaultExport)) {\r\n // we're dealing with a file loaded using the css-loader:\r\n return [2 /*return*/, this.getCssText(defaultExport)];\r\n }\r\n return [2 /*return*/, typeof result === \"string\" ? result : defaultExport];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Check if a loaded module is a css-loader module\r\n * @param o The loaded module\r\n * @returns `true` when {@link o} is a {@link CssLoaderModule}; otherwise false\r\n */\r\n WebpackLoader.prototype.isCssLoaderModule = function (o) {\r\n return o instanceof Array && o[0] instanceof Array && o.hasOwnProperty('toString');\r\n };\r\n /**\r\n * Get CSS text from loaded css-loader module\r\n * @param cssLoaderModule The {@link CssLoaderModule}\r\n * @returns The css content with potential source map references\r\n */\r\n WebpackLoader.prototype.getCssText = function (cssLoaderModule) {\r\n var result = cssLoaderModule.toString();\r\n // If some css-loader modules include source maps,\r\n // ensure /*# sourceURL=[...] */ is removed to avoid chrome devtools problems\r\n if (cssLoaderModule.some(function (m) { return m[3]; })) {\r\n result = result.replace(/^\\/\\*# sourceURL=.* \\*\\/\\s*\\n/gm, \"\");\r\n }\r\n return result;\r\n };\r\n /**\r\n * Alters a module id so that it includes a plugin loader.\r\n * @param url The url of the module to load.\r\n * @param pluginName The plugin to apply to the module id.\r\n * @return The plugin-based module id.\r\n */\r\n WebpackLoader.prototype.applyPluginToUrl = function (url, pluginName) {\r\n return pluginName + \"!\" + url;\r\n };\r\n /**\r\n * Registers a plugin with the loader.\r\n * @param pluginName The name of the plugin.\r\n * @param implementation The plugin implementation.\r\n */\r\n WebpackLoader.prototype.addPlugin = function (pluginName, implementation) {\r\n this.loaderPlugins[pluginName] = implementation;\r\n };\r\n return WebpackLoader;\r\n}(Loader));\r\nPLATFORM.Loader = WebpackLoader;\n\nexport { TextTemplateLoader, WebpackLoader, ensureOriginOnExports };\n","var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n\n\nimport { relativeToFile } from 'aurelia-path';\nimport { Origin } from 'aurelia-metadata';\n\nexport var TemplateDependency = function TemplateDependency(src, name) {\n \n\n this.src = src;\n this.name = name;\n};\n\nexport var TemplateRegistryEntry = function () {\n function TemplateRegistryEntry(address) {\n \n\n this.templateIsLoaded = false;\n this.factoryIsReady = false;\n this.resources = null;\n this.dependencies = null;\n\n this.address = address;\n this.onReady = null;\n this._template = null;\n this._factory = null;\n }\n\n TemplateRegistryEntry.prototype.addDependency = function addDependency(src, name) {\n var finalSrc = typeof src === 'string' ? relativeToFile(src, this.address) : Origin.get(src).moduleId;\n\n this.dependencies.push(new TemplateDependency(finalSrc, name));\n };\n\n _createClass(TemplateRegistryEntry, [{\n key: 'template',\n get: function get() {\n return this._template;\n },\n set: function set(value) {\n var address = this.address;\n var requires = void 0;\n var current = void 0;\n var src = void 0;\n var dependencies = void 0;\n\n this._template = value;\n this.templateIsLoaded = true;\n\n requires = value.content.querySelectorAll('require');\n dependencies = this.dependencies = new Array(requires.length);\n\n for (var i = 0, ii = requires.length; i < ii; ++i) {\n current = requires[i];\n src = current.getAttribute('from');\n\n if (!src) {\n throw new Error(' element in ' + address + ' has no \"from\" attribute.');\n }\n\n dependencies[i] = new TemplateDependency(relativeToFile(src, address), current.getAttribute('as'));\n\n if (current.parentNode) {\n current.parentNode.removeChild(current);\n }\n }\n }\n }, {\n key: 'factory',\n get: function get() {\n return this._factory;\n },\n set: function set(value) {\n this._factory = value;\n this.factoryIsReady = true;\n }\n }]);\n\n return TemplateRegistryEntry;\n}();\n\nexport var Loader = function () {\n function Loader() {\n \n\n this.templateRegistry = {};\n }\n\n Loader.prototype.map = function map(id, source) {\n throw new Error('Loaders must implement map(id, source).');\n };\n\n Loader.prototype.normalizeSync = function normalizeSync(moduleId, relativeTo) {\n throw new Error('Loaders must implement normalizeSync(moduleId, relativeTo).');\n };\n\n Loader.prototype.normalize = function normalize(moduleId, relativeTo) {\n throw new Error('Loaders must implement normalize(moduleId: string, relativeTo: string): Promise.');\n };\n\n Loader.prototype.loadModule = function loadModule(id) {\n throw new Error('Loaders must implement loadModule(id).');\n };\n\n Loader.prototype.loadAllModules = function loadAllModules(ids) {\n throw new Error('Loader must implement loadAllModules(ids).');\n };\n\n Loader.prototype.loadTemplate = function loadTemplate(url) {\n throw new Error('Loader must implement loadTemplate(url).');\n };\n\n Loader.prototype.loadText = function loadText(url) {\n throw new Error('Loader must implement loadText(url).');\n };\n\n Loader.prototype.applyPluginToUrl = function applyPluginToUrl(url, pluginName) {\n throw new Error('Loader must implement applyPluginToUrl(url, pluginName).');\n };\n\n Loader.prototype.addPlugin = function addPlugin(pluginName, implementation) {\n throw new Error('Loader must implement addPlugin(pluginName, implementation).');\n };\n\n Loader.prototype.getOrCreateTemplateRegistryEntry = function getOrCreateTemplateRegistryEntry(address) {\n return this.templateRegistry[address] || (this.templateRegistry[address] = new TemplateRegistryEntry(address));\n };\n\n return Loader;\n}();","\n\nexport var ConsoleAppender = function () {\n function ConsoleAppender() {\n \n }\n\n ConsoleAppender.prototype.debug = function debug(logger) {\n var _console;\n\n for (var _len = arguments.length, rest = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n\n (_console = console).debug.apply(_console, [\"DEBUG [\" + logger.id + \"]\"].concat(rest));\n };\n\n ConsoleAppender.prototype.info = function info(logger) {\n var _console2;\n\n for (var _len2 = arguments.length, rest = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n rest[_key2 - 1] = arguments[_key2];\n }\n\n (_console2 = console).info.apply(_console2, [\"INFO [\" + logger.id + \"]\"].concat(rest));\n };\n\n ConsoleAppender.prototype.warn = function warn(logger) {\n var _console3;\n\n for (var _len3 = arguments.length, rest = Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n rest[_key3 - 1] = arguments[_key3];\n }\n\n (_console3 = console).warn.apply(_console3, [\"WARN [\" + logger.id + \"]\"].concat(rest));\n };\n\n ConsoleAppender.prototype.error = function error(logger) {\n var _console4;\n\n for (var _len4 = arguments.length, rest = Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n rest[_key4 - 1] = arguments[_key4];\n }\n\n (_console4 = console).error.apply(_console4, [\"ERROR [\" + logger.id + \"]\"].concat(rest));\n };\n\n return ConsoleAppender;\n}();","\n\nexport var logLevel = {\n none: 0,\n error: 10,\n warn: 20,\n info: 30,\n debug: 40\n};\n\nvar loggers = {};\nvar appenders = [];\nvar globalDefaultLevel = logLevel.none;\n\nvar standardLevels = ['none', 'error', 'warn', 'info', 'debug'];\nfunction isStandardLevel(level) {\n return standardLevels.filter(function (l) {\n return l === level;\n }).length > 0;\n}\n\nfunction appendArgs() {\n return [this].concat(Array.prototype.slice.call(arguments));\n}\n\nfunction logFactory(level) {\n var threshold = logLevel[level];\n return function () {\n if (this.level < threshold) {\n return;\n }\n\n var args = appendArgs.apply(this, arguments);\n var i = appenders.length;\n while (i--) {\n var _appenders$i;\n\n (_appenders$i = appenders[i])[level].apply(_appenders$i, args);\n }\n };\n}\n\nfunction logFactoryCustom(level) {\n var threshold = logLevel[level];\n return function () {\n if (this.level < threshold) {\n return;\n }\n\n var args = appendArgs.apply(this, arguments);\n var i = appenders.length;\n while (i--) {\n var appender = appenders[i];\n if (appender[level] !== undefined) {\n appender[level].apply(appender, args);\n }\n }\n };\n}\n\nfunction connectLoggers() {\n var proto = Logger.prototype;\n for (var _level in logLevel) {\n if (isStandardLevel(_level)) {\n if (_level !== 'none') {\n proto[_level] = logFactory(_level);\n }\n } else {\n proto[_level] = logFactoryCustom(_level);\n }\n }\n}\n\nfunction disconnectLoggers() {\n var proto = Logger.prototype;\n for (var _level2 in logLevel) {\n if (_level2 !== 'none') {\n proto[_level2] = function () {};\n }\n }\n}\n\nexport function getLogger(id) {\n return loggers[id] || new Logger(id);\n}\n\nexport function addAppender(appender) {\n if (appenders.push(appender) === 1) {\n connectLoggers();\n }\n}\n\nexport function removeAppender(appender) {\n appenders = appenders.filter(function (a) {\n return a !== appender;\n });\n}\n\nexport function getAppenders() {\n return [].concat(appenders);\n}\n\nexport function clearAppenders() {\n appenders = [];\n disconnectLoggers();\n}\n\nexport function addCustomLevel(name, value) {\n if (logLevel[name] !== undefined) {\n throw Error('Log level \"' + name + '\" already exists.');\n }\n\n if (isNaN(value)) {\n throw Error('Value must be a number.');\n }\n\n logLevel[name] = value;\n\n if (appenders.length > 0) {\n connectLoggers();\n } else {\n Logger.prototype[name] = function () {};\n }\n}\n\nexport function removeCustomLevel(name) {\n if (logLevel[name] === undefined) {\n return;\n }\n\n if (isStandardLevel(name)) {\n throw Error('Built-in log level \"' + name + '\" cannot be removed.');\n }\n\n delete logLevel[name];\n delete Logger.prototype[name];\n}\n\nexport function setLevel(level) {\n globalDefaultLevel = level;\n for (var key in loggers) {\n loggers[key].setLevel(level);\n }\n}\n\nexport function getLevel() {\n return globalDefaultLevel;\n}\n\nexport var Logger = function () {\n function Logger(id) {\n \n\n var cached = loggers[id];\n if (cached) {\n return cached;\n }\n\n loggers[id] = this;\n this.id = id;\n this.level = globalDefaultLevel;\n }\n\n Logger.prototype.debug = function debug(message) {};\n\n Logger.prototype.info = function info(message) {};\n\n Logger.prototype.warn = function warn(message) {};\n\n Logger.prototype.error = function error(message) {};\n\n Logger.prototype.setLevel = function setLevel(level) {\n this.level = level;\n };\n\n Logger.prototype.isDebugEnabled = function isDebugEnabled() {\n return this.level === logLevel.debug;\n };\n\n return Logger;\n}();","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _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\n\n\nimport { PLATFORM } from 'aurelia-pal';\n\nfunction isObject(val) {\n return val && (typeof val === 'function' || (typeof val === 'undefined' ? 'undefined' : _typeof(val)) === 'object');\n}\n\nexport var metadata = {\n resource: 'aurelia:resource',\n paramTypes: 'design:paramtypes',\n propertyType: 'design:type',\n properties: 'design:properties',\n get: function get(metadataKey, target, targetKey) {\n if (!isObject(target)) {\n return undefined;\n }\n var result = metadata.getOwn(metadataKey, target, targetKey);\n return result === undefined ? metadata.get(metadataKey, Object.getPrototypeOf(target), targetKey) : result;\n },\n getOwn: function getOwn(metadataKey, target, targetKey) {\n if (!isObject(target)) {\n return undefined;\n }\n return Reflect.getOwnMetadata(metadataKey, target, targetKey);\n },\n define: function define(metadataKey, metadataValue, target, targetKey) {\n Reflect.defineMetadata(metadataKey, metadataValue, target, targetKey);\n },\n getOrCreateOwn: function getOrCreateOwn(metadataKey, Type, target, targetKey) {\n var result = metadata.getOwn(metadataKey, target, targetKey);\n\n if (result === undefined) {\n result = new Type();\n Reflect.defineMetadata(metadataKey, result, target, targetKey);\n }\n\n return result;\n }\n};\n\nvar originStorage = new Map();\nvar unknownOrigin = Object.freeze({ moduleId: undefined, moduleMember: undefined });\n\nexport var Origin = function () {\n function Origin(moduleId, moduleMember) {\n \n\n this.moduleId = moduleId;\n this.moduleMember = moduleMember;\n }\n\n Origin.get = function get(fn) {\n var origin = originStorage.get(fn);\n\n if (origin === undefined) {\n PLATFORM.eachModule(function (key, value) {\n if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object') {\n for (var name in value) {\n try {\n var exp = value[name];\n if (exp === fn) {\n originStorage.set(fn, origin = new Origin(key, name));\n return true;\n }\n } catch (e) {}\n }\n }\n\n if (value === fn) {\n originStorage.set(fn, origin = new Origin(key, 'default'));\n return true;\n }\n\n return false;\n });\n }\n\n return origin || unknownOrigin;\n };\n\n Origin.set = function set(fn, origin) {\n originStorage.set(fn, origin);\n };\n\n return Origin;\n}();\n\nexport function decorators() {\n for (var _len = arguments.length, rest = Array(_len), _key = 0; _key < _len; _key++) {\n rest[_key] = arguments[_key];\n }\n\n var applicator = function applicator(target, key, descriptor) {\n var i = rest.length;\n\n if (key) {\n descriptor = descriptor || {\n value: target[key],\n writable: true,\n configurable: true,\n enumerable: true\n };\n\n while (i--) {\n descriptor = rest[i](target, key, descriptor) || descriptor;\n }\n\n Object.defineProperty(target, key, descriptor);\n } else {\n while (i--) {\n target = rest[i](target) || target;\n }\n }\n\n return target;\n };\n\n applicator.on = applicator;\n return applicator;\n}\n\nexport function deprecated(optionsOrTarget, maybeKey, maybeDescriptor) {\n function decorator(target, key, descriptor) {\n var methodSignature = target.constructor.name + '#' + key;\n var options = maybeKey ? {} : optionsOrTarget || {};\n var message = 'DEPRECATION - ' + methodSignature;\n\n if (typeof descriptor.value !== 'function') {\n throw new SyntaxError('Only methods can be marked as deprecated.');\n }\n\n if (options.message) {\n message += ' - ' + options.message;\n }\n\n return _extends({}, descriptor, {\n value: function deprecationWrapper() {\n if (options.error) {\n throw new Error(message);\n } else {\n console.warn(message);\n }\n\n return descriptor.value.apply(this, arguments);\n }\n });\n }\n\n return maybeKey ? decorator(optionsOrTarget, maybeKey, maybeDescriptor) : decorator;\n}\n\nexport function mixin(behavior) {\n var instanceKeys = Object.keys(behavior);\n\n function _mixin(possible) {\n var decorator = function decorator(target) {\n var resolvedTarget = typeof target === 'function' ? target.prototype : target;\n\n var i = instanceKeys.length;\n while (i--) {\n var property = instanceKeys[i];\n Object.defineProperty(resolvedTarget, property, {\n value: behavior[property],\n writable: true\n });\n }\n };\n\n return possible ? decorator(possible) : decorator;\n }\n\n return _mixin;\n}\n\nfunction alwaysValid() {\n return true;\n}\nfunction noCompose() {}\n\nfunction ensureProtocolOptions(options) {\n if (options === undefined) {\n options = {};\n } else if (typeof options === 'function') {\n options = {\n validate: options\n };\n }\n\n if (!options.validate) {\n options.validate = alwaysValid;\n }\n\n if (!options.compose) {\n options.compose = noCompose;\n }\n\n return options;\n}\n\nfunction createProtocolValidator(validate) {\n return function (target) {\n var result = validate(target);\n return result === true;\n };\n}\n\nfunction createProtocolAsserter(name, validate) {\n return function (target) {\n var result = validate(target);\n if (result !== true) {\n throw new Error(result || name + ' was not correctly implemented.');\n }\n };\n}\n\nexport function protocol(name, options) {\n options = ensureProtocolOptions(options);\n\n var result = function result(target) {\n var resolvedTarget = typeof target === 'function' ? target.prototype : target;\n\n options.compose(resolvedTarget);\n result.assert(resolvedTarget);\n\n Object.defineProperty(resolvedTarget, 'protocol:' + name, {\n enumerable: false,\n configurable: false,\n writable: false,\n value: true\n });\n };\n\n result.validate = createProtocolValidator(options.validate);\n result.assert = createProtocolAsserter(name, options.validate);\n\n return result;\n}\n\nprotocol.create = function (name, options) {\n options = ensureProtocolOptions(options);\n var hidden = 'protocol:' + name;\n var result = function result(target) {\n var decorator = protocol(name, options);\n return target ? decorator(target) : decorator;\n };\n\n result.decorates = function (obj) {\n return obj[hidden] === true;\n };\n result.validate = createProtocolValidator(options.validate);\n result.assert = createProtocolAsserter(name, options.validate);\n\n return result;\n};","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