{"version":3,"file":"vendor.aurelia-templating-resources.d5c322954b5165d9.bundle.js","mappings":"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","sources":["webpack://client-app/./node_modules/aurelia-templating-resources/dist/native-modules/aurelia-templating-resources.js"],"sourcesContent":["import { Container, inject, Optional } from 'aurelia-dependency-injection';\nimport { DOM, FEATURE } from 'aurelia-pal';\nimport { TaskQueue } from 'aurelia-task-queue';\nimport { bindable, noView, customElement, CompositionEngine, ViewSlot, ViewResources, customAttribute, templateController, BoundViewFactory, TargetInstruction, Animator, resource, useView, useShadowDOM, ViewEngine } from 'aurelia-templating';\nimport { createOverrideContext, bindingMode, BindingBehavior, ValueConverter, sourceContext, mergeSplice, ObserverLocator, valueConverter, DataAttributeObserver, bindingBehavior, targetContext, EventSubscriber } from 'aurelia-binding';\nimport { Loader } from 'aurelia-loader';\nimport { relativeToFile } from 'aurelia-path';\nimport { mixin } from 'aurelia-metadata';\nimport { getLogger } from 'aurelia-logging';\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 __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\n\nvar ActivationStrategy;\r\n(function (ActivationStrategy) {\r\n ActivationStrategy[\"InvokeLifecycle\"] = \"invoke-lifecycle\";\r\n ActivationStrategy[\"Replace\"] = \"replace\";\r\n})(ActivationStrategy || (ActivationStrategy = {}));\r\nvar Compose = (function () {\r\n function Compose(element, container, compositionEngine, viewSlot, viewResources, taskQueue) {\r\n this.activationStrategy = ActivationStrategy.InvokeLifecycle;\r\n this.element = element;\r\n this.container = container;\r\n this.compositionEngine = compositionEngine;\r\n this.viewSlot = viewSlot;\r\n this.viewResources = viewResources;\r\n this.taskQueue = taskQueue;\r\n this.currentController = null;\r\n this.currentViewModel = null;\r\n this.changes = Object.create(null);\r\n }\r\n Compose.inject = function () {\r\n return [DOM.Element, Container, CompositionEngine, ViewSlot, ViewResources, TaskQueue];\r\n };\r\n Compose.prototype.created = function (owningView) {\r\n this.owningView = owningView;\r\n };\r\n Compose.prototype.bind = function (bindingContext, overrideContext) {\r\n this.bindingContext = bindingContext;\r\n this.overrideContext = overrideContext;\r\n var changes = this.changes;\r\n changes.view = this.view;\r\n changes.viewModel = this.viewModel;\r\n changes.model = this.model;\r\n if (!this.pendingTask) {\r\n processChanges(this);\r\n }\r\n };\r\n Compose.prototype.unbind = function () {\r\n this.changes = Object.create(null);\r\n this.bindingContext = null;\r\n this.overrideContext = null;\r\n var returnToCache = true;\r\n var skipAnimation = true;\r\n this.viewSlot.removeAll(returnToCache, skipAnimation);\r\n };\r\n Compose.prototype.modelChanged = function (newValue, oldValue) {\r\n this.changes.model = newValue;\r\n requestUpdate(this);\r\n };\r\n Compose.prototype.viewChanged = function (newValue, oldValue) {\r\n this.changes.view = newValue;\r\n requestUpdate(this);\r\n };\r\n Compose.prototype.viewModelChanged = function (newValue, oldValue) {\r\n this.changes.viewModel = newValue;\r\n requestUpdate(this);\r\n };\r\n __decorate([\r\n bindable\r\n ], Compose.prototype, \"model\", void 0);\r\n __decorate([\r\n bindable\r\n ], Compose.prototype, \"view\", void 0);\r\n __decorate([\r\n bindable\r\n ], Compose.prototype, \"viewModel\", void 0);\r\n __decorate([\r\n bindable\r\n ], Compose.prototype, \"activationStrategy\", void 0);\r\n __decorate([\r\n bindable\r\n ], Compose.prototype, \"swapOrder\", void 0);\r\n Compose = __decorate([\r\n noView,\r\n customElement('compose')\r\n ], Compose);\r\n return Compose;\r\n}());\r\nfunction isEmpty(obj) {\r\n for (var _ in obj) {\r\n return false;\r\n }\r\n return true;\r\n}\r\nfunction tryActivateViewModel(vm, model) {\r\n if (vm && typeof vm.activate === 'function') {\r\n return Promise.resolve(vm.activate(model));\r\n }\r\n}\r\nfunction createInstruction(composer, instruction) {\r\n return Object.assign(instruction, {\r\n bindingContext: composer.bindingContext,\r\n overrideContext: composer.overrideContext,\r\n owningView: composer.owningView,\r\n container: composer.container,\r\n viewSlot: composer.viewSlot,\r\n viewResources: composer.viewResources,\r\n currentController: composer.currentController,\r\n host: composer.element,\r\n swapOrder: composer.swapOrder\r\n });\r\n}\r\nfunction processChanges(composer) {\r\n var changes = composer.changes;\r\n composer.changes = Object.create(null);\r\n if (needsReInitialization(composer, changes)) {\r\n var instruction = {\r\n view: composer.view,\r\n viewModel: composer.currentViewModel || composer.viewModel,\r\n model: composer.model\r\n };\r\n instruction = Object.assign(instruction, changes);\r\n instruction = createInstruction(composer, instruction);\r\n composer.pendingTask = composer.compositionEngine.compose(instruction).then(function (controller) {\r\n composer.currentController = controller;\r\n composer.currentViewModel = controller ? controller.viewModel : null;\r\n });\r\n }\r\n else {\r\n composer.pendingTask = tryActivateViewModel(composer.currentViewModel, changes.model);\r\n if (!composer.pendingTask) {\r\n return;\r\n }\r\n }\r\n composer.pendingTask = composer.pendingTask\r\n .then(function () {\r\n completeCompositionTask(composer);\r\n }, function (reason) {\r\n completeCompositionTask(composer);\r\n throw reason;\r\n });\r\n}\r\nfunction completeCompositionTask(composer) {\r\n composer.pendingTask = null;\r\n if (!isEmpty(composer.changes)) {\r\n processChanges(composer);\r\n }\r\n}\r\nfunction requestUpdate(composer) {\r\n if (composer.pendingTask || composer.updateRequested) {\r\n return;\r\n }\r\n composer.updateRequested = true;\r\n composer.taskQueue.queueMicroTask(function () {\r\n composer.updateRequested = false;\r\n processChanges(composer);\r\n });\r\n}\r\nfunction needsReInitialization(composer, changes) {\r\n var activationStrategy = composer.activationStrategy;\r\n var vm = composer.currentViewModel;\r\n if (vm && typeof vm.determineActivationStrategy === 'function') {\r\n activationStrategy = vm.determineActivationStrategy();\r\n }\r\n return 'view' in changes\r\n || 'viewModel' in changes\r\n || activationStrategy === ActivationStrategy.Replace;\r\n}\n\nvar IfCore = (function () {\r\n function IfCore(viewFactory, viewSlot) {\r\n this.viewFactory = viewFactory;\r\n this.viewSlot = viewSlot;\r\n this.view = null;\r\n this.bindingContext = null;\r\n this.overrideContext = null;\r\n this.showing = false;\r\n this.cache = true;\r\n }\r\n IfCore.prototype.bind = function (bindingContext, overrideContext) {\r\n this.bindingContext = bindingContext;\r\n this.overrideContext = overrideContext;\r\n };\r\n IfCore.prototype.unbind = function () {\r\n if (this.view === null) {\r\n return;\r\n }\r\n this.view.unbind();\r\n if (!this.viewFactory.isCaching) {\r\n return;\r\n }\r\n if (this.showing) {\r\n this.showing = false;\r\n this.viewSlot.remove(this.view, true, true);\r\n }\r\n else {\r\n this.view.returnToCache();\r\n }\r\n this.view = null;\r\n };\r\n IfCore.prototype._show = function () {\r\n if (this.showing) {\r\n if (!this.view.isBound) {\r\n this.view.bind(this.bindingContext, this.overrideContext);\r\n }\r\n return;\r\n }\r\n if (this.view === null) {\r\n this.view = this.viewFactory.create();\r\n }\r\n if (!this.view.isBound) {\r\n this.view.bind(this.bindingContext, this.overrideContext);\r\n }\r\n this.showing = true;\r\n return this.viewSlot.add(this.view);\r\n };\r\n IfCore.prototype._hide = function () {\r\n var _this = this;\r\n if (!this.showing) {\r\n return;\r\n }\r\n this.showing = false;\r\n var removed = this.viewSlot.remove(this.view);\r\n if (removed instanceof Promise) {\r\n return removed.then(function () {\r\n _this._unbindView();\r\n });\r\n }\r\n this._unbindView();\r\n };\r\n IfCore.prototype._unbindView = function () {\r\n var cache = this.cache === 'false' ? false : !!this.cache;\r\n this.view.unbind();\r\n if (!cache) {\r\n this.view = null;\r\n }\r\n };\r\n return IfCore;\r\n}());\n\nvar If = (function (_super) {\r\n __extends(If, _super);\r\n function If() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.cache = true;\r\n return _this;\r\n }\r\n If.prototype.bind = function (bindingContext, overrideContext) {\r\n _super.prototype.bind.call(this, bindingContext, overrideContext);\r\n if (this.condition) {\r\n this._show();\r\n }\r\n else {\r\n this._hide();\r\n }\r\n };\r\n If.prototype.conditionChanged = function (newValue) {\r\n this._update(newValue);\r\n };\r\n If.prototype._update = function (show) {\r\n var _this = this;\r\n if (this.animating) {\r\n return;\r\n }\r\n var promise;\r\n if (this.elseVm) {\r\n promise = show ? this._swap(this.elseVm, this) : this._swap(this, this.elseVm);\r\n }\r\n else {\r\n promise = show ? this._show() : this._hide();\r\n }\r\n if (promise) {\r\n this.animating = true;\r\n promise.then(function () {\r\n _this.animating = false;\r\n if (_this.condition !== _this.showing) {\r\n _this._update(_this.condition);\r\n }\r\n });\r\n }\r\n };\r\n If.prototype._swap = function (remove, add) {\r\n switch (this.swapOrder) {\r\n case 'before':\r\n return Promise.resolve(add._show()).then(function () { return remove._hide(); });\r\n case 'with':\r\n return Promise.all([remove._hide(), add._show()]);\r\n default:\r\n var promise = remove._hide();\r\n return promise ? promise.then(function () { return add._show(); }) : add._show();\r\n }\r\n };\r\n __decorate([\r\n bindable({ primaryProperty: true })\r\n ], If.prototype, \"condition\", void 0);\r\n __decorate([\r\n bindable\r\n ], If.prototype, \"swapOrder\", void 0);\r\n __decorate([\r\n bindable\r\n ], If.prototype, \"cache\", void 0);\r\n If = __decorate([\r\n customAttribute('if'),\r\n templateController,\r\n inject(BoundViewFactory, ViewSlot)\r\n ], If);\r\n return If;\r\n}(IfCore));\n\nvar Else = (function (_super) {\r\n __extends(Else, _super);\r\n function Else(viewFactory, viewSlot) {\r\n var _this = _super.call(this, viewFactory, viewSlot) || this;\r\n _this._registerInIf();\r\n return _this;\r\n }\r\n Else.prototype.bind = function (bindingContext, overrideContext) {\r\n _super.prototype.bind.call(this, bindingContext, overrideContext);\r\n if (this.ifVm.condition) {\r\n this._hide();\r\n }\r\n else {\r\n this._show();\r\n }\r\n };\r\n Else.prototype._registerInIf = function () {\r\n var previous = this.viewSlot.anchor.previousSibling;\r\n while (previous && !previous.au) {\r\n previous = previous.previousSibling;\r\n }\r\n if (!previous || !previous.au.if) {\r\n throw new Error(\"Can't find matching If for Else custom attribute.\");\r\n }\r\n this.ifVm = previous.au.if.viewModel;\r\n this.ifVm.elseVm = this;\r\n };\r\n Else = __decorate([\r\n customAttribute('else'),\r\n templateController,\r\n inject(BoundViewFactory, ViewSlot)\r\n ], Else);\r\n return Else;\r\n}(IfCore));\n\nvar With = (function () {\r\n function With(viewFactory, viewSlot) {\r\n this.viewFactory = viewFactory;\r\n this.viewSlot = viewSlot;\r\n this.parentOverrideContext = null;\r\n this.view = null;\r\n }\r\n With.prototype.bind = function (bindingContext, overrideContext) {\r\n this.parentOverrideContext = overrideContext;\r\n this.valueChanged(this.value);\r\n };\r\n With.prototype.valueChanged = function (newValue) {\r\n var overrideContext = createOverrideContext(newValue, this.parentOverrideContext);\r\n var view = this.view;\r\n if (!view) {\r\n view = this.view = this.viewFactory.create();\r\n view.bind(newValue, overrideContext);\r\n this.viewSlot.add(view);\r\n }\r\n else {\r\n view.bind(newValue, overrideContext);\r\n }\r\n };\r\n With.prototype.unbind = function () {\r\n var view = this.view;\r\n this.parentOverrideContext = null;\r\n if (view) {\r\n view.unbind();\r\n }\r\n };\r\n With = __decorate([\r\n customAttribute('with'),\r\n templateController,\r\n inject(BoundViewFactory, ViewSlot)\r\n ], With);\r\n return With;\r\n}());\n\nvar oneTime = bindingMode.oneTime;\r\nfunction updateOverrideContexts(views, startIndex) {\r\n var length = views.length;\r\n if (startIndex > 0) {\r\n startIndex = startIndex - 1;\r\n }\r\n for (; startIndex < length; ++startIndex) {\r\n updateOverrideContext(views[startIndex].overrideContext, startIndex, length);\r\n }\r\n}\r\nfunction createFullOverrideContext(repeat, data, index, length, key) {\r\n var bindingContext = {};\r\n var overrideContext = createOverrideContext(bindingContext, repeat.scope.overrideContext);\r\n if (typeof key !== 'undefined') {\r\n bindingContext[repeat.key] = key;\r\n bindingContext[repeat.value] = data;\r\n }\r\n else {\r\n bindingContext[repeat.local] = data;\r\n }\r\n updateOverrideContext(overrideContext, index, length);\r\n return overrideContext;\r\n}\r\nfunction updateOverrideContext(overrideContext, index, length) {\r\n var first = (index === 0);\r\n var last = (index === length - 1);\r\n var even = index % 2 === 0;\r\n overrideContext.$index = index;\r\n overrideContext.$first = first;\r\n overrideContext.$last = last;\r\n overrideContext.$middle = !(first || last);\r\n overrideContext.$odd = !even;\r\n overrideContext.$even = even;\r\n}\r\nfunction getItemsSourceExpression(instruction, attrName) {\r\n return instruction.behaviorInstructions\r\n .filter(function (bi) { return bi.originalAttrName === attrName; })[0]\r\n .attributes\r\n .items\r\n .sourceExpression;\r\n}\r\nfunction unwrapExpression(expression) {\r\n var unwrapped = false;\r\n while (expression instanceof BindingBehavior) {\r\n expression = expression.expression;\r\n }\r\n while (expression instanceof ValueConverter) {\r\n expression = expression.expression;\r\n unwrapped = true;\r\n }\r\n return unwrapped ? expression : null;\r\n}\r\nfunction isOneTime(expression) {\r\n while (expression instanceof BindingBehavior) {\r\n if (expression.name === 'oneTime') {\r\n return true;\r\n }\r\n expression = expression.expression;\r\n }\r\n return false;\r\n}\r\nfunction updateOneTimeBinding(binding) {\r\n if (binding.call && binding.mode === oneTime) {\r\n binding.call(sourceContext);\r\n }\r\n else if (binding.updateOneTimeBindings) {\r\n binding.updateOneTimeBindings();\r\n }\r\n}\r\nfunction indexOf(array, item, matcher, startIndex) {\r\n if (!matcher) {\r\n return array.indexOf(item);\r\n }\r\n var length = array.length;\r\n for (var index = startIndex || 0; index < length; index++) {\r\n if (matcher(array[index], item)) {\r\n return index;\r\n }\r\n }\r\n return -1;\r\n}\n\nvar ArrayRepeatStrategy = (function () {\r\n function ArrayRepeatStrategy() {\r\n }\r\n ArrayRepeatStrategy.prototype.getCollectionObserver = function (observerLocator, items) {\r\n return observerLocator.getArrayObserver(items);\r\n };\r\n ArrayRepeatStrategy.prototype.instanceChanged = function (repeat, items) {\r\n var _this = this;\r\n var $repeat = repeat;\r\n var itemsLength = items.length;\r\n if (!items || itemsLength === 0) {\r\n $repeat.removeAllViews(true, !$repeat.viewsRequireLifecycle);\r\n return;\r\n }\r\n var children = $repeat.views();\r\n var viewsLength = children.length;\r\n if (viewsLength === 0) {\r\n this._standardProcessInstanceChanged($repeat, items);\r\n return;\r\n }\r\n if ($repeat.viewsRequireLifecycle) {\r\n var childrenSnapshot = children.slice(0);\r\n var itemNameInBindingContext = $repeat.local;\r\n var matcher_1 = $repeat.matcher();\r\n var itemsPreviouslyInViews_1 = [];\r\n var viewsToRemove = [];\r\n for (var index = 0; index < viewsLength; index++) {\r\n var view = childrenSnapshot[index];\r\n var oldItem = view.bindingContext[itemNameInBindingContext];\r\n if (indexOf(items, oldItem, matcher_1) === -1) {\r\n viewsToRemove.push(view);\r\n }\r\n else {\r\n itemsPreviouslyInViews_1.push(oldItem);\r\n }\r\n }\r\n var updateViews = void 0;\r\n var removePromise = void 0;\r\n if (itemsPreviouslyInViews_1.length > 0) {\r\n removePromise = $repeat.removeViews(viewsToRemove, true, !$repeat.viewsRequireLifecycle);\r\n updateViews = function () {\r\n for (var index = 0; index < itemsLength; index++) {\r\n var item = items[index];\r\n var indexOfView = indexOf(itemsPreviouslyInViews_1, item, matcher_1, index);\r\n var view = void 0;\r\n if (indexOfView === -1) {\r\n var overrideContext = createFullOverrideContext($repeat, items[index], index, itemsLength);\r\n $repeat.insertView(index, overrideContext.bindingContext, overrideContext);\r\n itemsPreviouslyInViews_1.splice(index, 0, undefined);\r\n }\r\n else if (indexOfView === index) {\r\n view = children[indexOfView];\r\n itemsPreviouslyInViews_1[indexOfView] = undefined;\r\n }\r\n else {\r\n view = children[indexOfView];\r\n $repeat.moveView(indexOfView, index);\r\n itemsPreviouslyInViews_1.splice(indexOfView, 1);\r\n itemsPreviouslyInViews_1.splice(index, 0, undefined);\r\n }\r\n if (view) {\r\n updateOverrideContext(view.overrideContext, index, itemsLength);\r\n }\r\n }\r\n _this._inPlaceProcessItems($repeat, items);\r\n };\r\n }\r\n else {\r\n removePromise = $repeat.removeAllViews(true, !$repeat.viewsRequireLifecycle);\r\n updateViews = function () { return _this._standardProcessInstanceChanged($repeat, items); };\r\n }\r\n if (removePromise instanceof Promise) {\r\n removePromise.then(updateViews);\r\n }\r\n else {\r\n updateViews();\r\n }\r\n }\r\n else {\r\n this._inPlaceProcessItems($repeat, items);\r\n }\r\n };\r\n ArrayRepeatStrategy.prototype._standardProcessInstanceChanged = function (repeat, items) {\r\n for (var i = 0, ii = items.length; i < ii; i++) {\r\n var overrideContext = createFullOverrideContext(repeat, items[i], i, ii);\r\n repeat.addView(overrideContext.bindingContext, overrideContext);\r\n }\r\n };\r\n ArrayRepeatStrategy.prototype._inPlaceProcessItems = function (repeat, items) {\r\n var itemsLength = items.length;\r\n var viewsLength = repeat.viewCount();\r\n while (viewsLength > itemsLength) {\r\n viewsLength--;\r\n repeat.removeView(viewsLength, true, !repeat.viewsRequireLifecycle);\r\n }\r\n var local = repeat.local;\r\n for (var i = 0; i < viewsLength; i++) {\r\n var view = repeat.view(i);\r\n var last = i === itemsLength - 1;\r\n var middle = i !== 0 && !last;\r\n var bindingContext = view.bindingContext;\r\n var overrideContext = view.overrideContext;\r\n if (bindingContext[local] === items[i]\r\n && overrideContext.$middle === middle\r\n && overrideContext.$last === last) {\r\n continue;\r\n }\r\n bindingContext[local] = items[i];\r\n overrideContext.$middle = middle;\r\n overrideContext.$last = last;\r\n repeat.updateBindings(view);\r\n }\r\n for (var i = viewsLength; i < itemsLength; i++) {\r\n var overrideContext = createFullOverrideContext(repeat, items[i], i, itemsLength);\r\n repeat.addView(overrideContext.bindingContext, overrideContext);\r\n }\r\n };\r\n ArrayRepeatStrategy.prototype.instanceMutated = function (repeat, array, splices) {\r\n var _this = this;\r\n if (repeat.__queuedSplices) {\r\n for (var i = 0, ii = splices.length; i < ii; ++i) {\r\n var _a = splices[i], index = _a.index, removed = _a.removed, addedCount = _a.addedCount;\r\n mergeSplice(repeat.__queuedSplices, index, removed, addedCount);\r\n }\r\n repeat.__array = array.slice(0);\r\n return;\r\n }\r\n var maybePromise = this._runSplices(repeat, array.slice(0), splices);\r\n if (maybePromise instanceof Promise) {\r\n var queuedSplices_1 = repeat.__queuedSplices = [];\r\n var runQueuedSplices_1 = function () {\r\n if (!queuedSplices_1.length) {\r\n repeat.__queuedSplices = undefined;\r\n repeat.__array = undefined;\r\n return;\r\n }\r\n var nextPromise = _this._runSplices(repeat, repeat.__array, queuedSplices_1) || Promise.resolve();\r\n queuedSplices_1 = repeat.__queuedSplices = [];\r\n nextPromise.then(runQueuedSplices_1);\r\n };\r\n maybePromise.then(runQueuedSplices_1);\r\n }\r\n };\r\n ArrayRepeatStrategy.prototype._runSplices = function (repeat, array, splices) {\r\n var _this = this;\r\n var removeDelta = 0;\r\n var rmPromises = [];\r\n for (var i = 0, ii = splices.length; i < ii; ++i) {\r\n var splice = splices[i];\r\n var removed = splice.removed;\r\n for (var j = 0, jj = removed.length; j < jj; ++j) {\r\n var viewOrPromise = repeat.removeView(splice.index + removeDelta + rmPromises.length, true);\r\n if (viewOrPromise instanceof Promise) {\r\n rmPromises.push(viewOrPromise);\r\n }\r\n }\r\n removeDelta -= splice.addedCount;\r\n }\r\n if (rmPromises.length > 0) {\r\n return Promise.all(rmPromises).then(function () {\r\n var spliceIndexLow = _this._handleAddedSplices(repeat, array, splices);\r\n updateOverrideContexts(repeat.views(), spliceIndexLow);\r\n });\r\n }\r\n var spliceIndexLow = this._handleAddedSplices(repeat, array, splices);\r\n updateOverrideContexts(repeat.views(), spliceIndexLow);\r\n return undefined;\r\n };\r\n ArrayRepeatStrategy.prototype._handleAddedSplices = function (repeat, array, splices) {\r\n var spliceIndex;\r\n var spliceIndexLow;\r\n var arrayLength = array.length;\r\n for (var i = 0, ii = splices.length; i < ii; ++i) {\r\n var splice = splices[i];\r\n var addIndex = spliceIndex = splice.index;\r\n var end = splice.index + splice.addedCount;\r\n if (typeof spliceIndexLow === 'undefined' || spliceIndexLow === null || spliceIndexLow > splice.index) {\r\n spliceIndexLow = spliceIndex;\r\n }\r\n for (; addIndex < end; ++addIndex) {\r\n var overrideContext = createFullOverrideContext(repeat, array[addIndex], addIndex, arrayLength);\r\n repeat.insertView(addIndex, overrideContext.bindingContext, overrideContext);\r\n }\r\n }\r\n return spliceIndexLow;\r\n };\r\n return ArrayRepeatStrategy;\r\n}());\n\nvar MapRepeatStrategy = (function () {\r\n function MapRepeatStrategy() {\r\n }\r\n MapRepeatStrategy.prototype.getCollectionObserver = function (observerLocator, items) {\r\n return observerLocator.getMapObserver(items);\r\n };\r\n MapRepeatStrategy.prototype.instanceChanged = function (repeat, items) {\r\n var _this = this;\r\n var removePromise = repeat.removeAllViews(true, !repeat.viewsRequireLifecycle);\r\n if (removePromise instanceof Promise) {\r\n removePromise.then(function () { return _this._standardProcessItems(repeat, items); });\r\n return;\r\n }\r\n this._standardProcessItems(repeat, items);\r\n };\r\n MapRepeatStrategy.prototype._standardProcessItems = function (repeat, items) {\r\n var index = 0;\r\n var overrideContext;\r\n items.forEach(function (value, key) {\r\n overrideContext = createFullOverrideContext(repeat, value, index, items.size, key);\r\n repeat.addView(overrideContext.bindingContext, overrideContext);\r\n ++index;\r\n });\r\n };\r\n MapRepeatStrategy.prototype.instanceMutated = function (repeat, map, records) {\r\n var key;\r\n var i;\r\n var ii;\r\n var overrideContext;\r\n var removeIndex;\r\n var addIndex;\r\n var record;\r\n var rmPromises = [];\r\n var viewOrPromise;\r\n for (i = 0, ii = records.length; i < ii; ++i) {\r\n record = records[i];\r\n key = record.key;\r\n switch (record.type) {\r\n case 'update':\r\n removeIndex = this._getViewIndexByKey(repeat, key);\r\n viewOrPromise = repeat.removeView(removeIndex, true, !repeat.viewsRequireLifecycle);\r\n if (viewOrPromise instanceof Promise) {\r\n rmPromises.push(viewOrPromise);\r\n }\r\n overrideContext = createFullOverrideContext(repeat, map.get(key), removeIndex, map.size, key);\r\n repeat.insertView(removeIndex, overrideContext.bindingContext, overrideContext);\r\n break;\r\n case 'add':\r\n addIndex = repeat.viewCount() <= map.size - 1 ? repeat.viewCount() : map.size - 1;\r\n overrideContext = createFullOverrideContext(repeat, map.get(key), addIndex, map.size, key);\r\n repeat.insertView(map.size - 1, overrideContext.bindingContext, overrideContext);\r\n break;\r\n case 'delete':\r\n if (record.oldValue === undefined) {\r\n return;\r\n }\r\n removeIndex = this._getViewIndexByKey(repeat, key);\r\n viewOrPromise = repeat.removeView(removeIndex, true, !repeat.viewsRequireLifecycle);\r\n if (viewOrPromise instanceof Promise) {\r\n rmPromises.push(viewOrPromise);\r\n }\r\n break;\r\n case 'clear':\r\n repeat.removeAllViews(true, !repeat.viewsRequireLifecycle);\r\n break;\r\n default:\r\n continue;\r\n }\r\n }\r\n if (rmPromises.length > 0) {\r\n Promise.all(rmPromises).then(function () {\r\n updateOverrideContexts(repeat.views(), 0);\r\n });\r\n }\r\n else {\r\n updateOverrideContexts(repeat.views(), 0);\r\n }\r\n };\r\n MapRepeatStrategy.prototype._getViewIndexByKey = function (repeat, key) {\r\n var i;\r\n var ii;\r\n var child;\r\n for (i = 0, ii = repeat.viewCount(); i < ii; ++i) {\r\n child = repeat.view(i);\r\n if (child.bindingContext[repeat.key] === key) {\r\n return i;\r\n }\r\n }\r\n return undefined;\r\n };\r\n return MapRepeatStrategy;\r\n}());\n\nvar NullRepeatStrategy = (function () {\r\n function NullRepeatStrategy() {\r\n }\r\n NullRepeatStrategy.prototype.instanceChanged = function (repeat, items) {\r\n repeat.removeAllViews(true);\r\n };\r\n NullRepeatStrategy.prototype.getCollectionObserver = function (observerLocator, items) {\r\n };\r\n return NullRepeatStrategy;\r\n}());\n\nvar NumberRepeatStrategy = (function () {\r\n function NumberRepeatStrategy() {\r\n }\r\n NumberRepeatStrategy.prototype.getCollectionObserver = function () {\r\n return null;\r\n };\r\n NumberRepeatStrategy.prototype.instanceChanged = function (repeat, value) {\r\n var _this = this;\r\n var removePromise = repeat.removeAllViews(true, !repeat.viewsRequireLifecycle);\r\n if (removePromise instanceof Promise) {\r\n removePromise.then(function () { return _this._standardProcessItems(repeat, value); });\r\n return;\r\n }\r\n this._standardProcessItems(repeat, value);\r\n };\r\n NumberRepeatStrategy.prototype._standardProcessItems = function (repeat, value) {\r\n var childrenLength = repeat.viewCount();\r\n var i;\r\n var ii;\r\n var overrideContext;\r\n var viewsToRemove;\r\n value = Math.floor(value);\r\n viewsToRemove = childrenLength - value;\r\n if (viewsToRemove > 0) {\r\n if (viewsToRemove > childrenLength) {\r\n viewsToRemove = childrenLength;\r\n }\r\n for (i = 0, ii = viewsToRemove; i < ii; ++i) {\r\n repeat.removeView(childrenLength - (i + 1), true, !repeat.viewsRequireLifecycle);\r\n }\r\n return;\r\n }\r\n for (i = childrenLength, ii = value; i < ii; ++i) {\r\n overrideContext = createFullOverrideContext(repeat, i, i, ii);\r\n repeat.addView(overrideContext.bindingContext, overrideContext);\r\n }\r\n updateOverrideContexts(repeat.views(), 0);\r\n };\r\n return NumberRepeatStrategy;\r\n}());\n\nvar SetRepeatStrategy = (function () {\r\n function SetRepeatStrategy() {\r\n }\r\n SetRepeatStrategy.prototype.getCollectionObserver = function (observerLocator, items) {\r\n return observerLocator.getSetObserver(items);\r\n };\r\n SetRepeatStrategy.prototype.instanceChanged = function (repeat, items) {\r\n var _this = this;\r\n var removePromise = repeat.removeAllViews(true, !repeat.viewsRequireLifecycle);\r\n if (removePromise instanceof Promise) {\r\n removePromise.then(function () { return _this._standardProcessItems(repeat, items); });\r\n return;\r\n }\r\n this._standardProcessItems(repeat, items);\r\n };\r\n SetRepeatStrategy.prototype._standardProcessItems = function (repeat, items) {\r\n var index = 0;\r\n var overrideContext;\r\n items.forEach(function (value) {\r\n overrideContext = createFullOverrideContext(repeat, value, index, items.size);\r\n repeat.addView(overrideContext.bindingContext, overrideContext);\r\n ++index;\r\n });\r\n };\r\n SetRepeatStrategy.prototype.instanceMutated = function (repeat, set, records) {\r\n var value;\r\n var i;\r\n var ii;\r\n var overrideContext;\r\n var removeIndex;\r\n var record;\r\n var rmPromises = [];\r\n var viewOrPromise;\r\n for (i = 0, ii = records.length; i < ii; ++i) {\r\n record = records[i];\r\n value = record.value;\r\n switch (record.type) {\r\n case 'add':\r\n var size = Math.max(set.size - 1, 0);\r\n overrideContext = createFullOverrideContext(repeat, value, size, set.size);\r\n repeat.insertView(size, overrideContext.bindingContext, overrideContext);\r\n break;\r\n case 'delete':\r\n removeIndex = this._getViewIndexByValue(repeat, value);\r\n viewOrPromise = repeat.removeView(removeIndex, true, !repeat.viewsRequireLifecycle);\r\n if (viewOrPromise instanceof Promise) {\r\n rmPromises.push(viewOrPromise);\r\n }\r\n break;\r\n case 'clear':\r\n repeat.removeAllViews(true, !repeat.viewsRequireLifecycle);\r\n break;\r\n default:\r\n continue;\r\n }\r\n }\r\n if (rmPromises.length > 0) {\r\n Promise.all(rmPromises).then(function () {\r\n updateOverrideContexts(repeat.views(), 0);\r\n });\r\n }\r\n else {\r\n updateOverrideContexts(repeat.views(), 0);\r\n }\r\n };\r\n SetRepeatStrategy.prototype._getViewIndexByValue = function (repeat, value) {\r\n var i;\r\n var ii;\r\n var child;\r\n for (i = 0, ii = repeat.viewCount(); i < ii; ++i) {\r\n child = repeat.view(i);\r\n if (child.bindingContext[repeat.local] === value) {\r\n return i;\r\n }\r\n }\r\n return undefined;\r\n };\r\n return SetRepeatStrategy;\r\n}());\n\nvar RepeatStrategyLocator = (function () {\r\n function RepeatStrategyLocator() {\r\n this.matchers = [];\r\n this.strategies = [];\r\n this.addStrategy(function (items) { return items === null || items === undefined; }, new NullRepeatStrategy());\r\n this.addStrategy(function (items) { return items instanceof Array; }, new ArrayRepeatStrategy());\r\n this.addStrategy(function (items) { return items instanceof Map; }, new MapRepeatStrategy());\r\n this.addStrategy(function (items) { return items instanceof Set; }, new SetRepeatStrategy());\r\n this.addStrategy(function (items) { return typeof items === 'number'; }, new NumberRepeatStrategy());\r\n }\r\n RepeatStrategyLocator.prototype.addStrategy = function (matcher, strategy) {\r\n this.matchers.push(matcher);\r\n this.strategies.push(strategy);\r\n };\r\n RepeatStrategyLocator.prototype.getStrategy = function (items) {\r\n var matchers = this.matchers;\r\n for (var i = 0, ii = matchers.length; i < ii; ++i) {\r\n if (matchers[i](items)) {\r\n return this.strategies[i];\r\n }\r\n }\r\n return null;\r\n };\r\n return RepeatStrategyLocator;\r\n}());\n\nvar lifecycleOptionalBehaviors = ['focus', 'if', 'else', 'repeat', 'show', 'hide', 'with'];\r\nfunction behaviorRequiresLifecycle(instruction) {\r\n var t = instruction.type;\r\n var name = t.elementName !== null ? t.elementName : t.attributeName;\r\n return lifecycleOptionalBehaviors.indexOf(name) === -1 && (t.handlesAttached || t.handlesBind || t.handlesCreated || t.handlesDetached || t.handlesUnbind)\r\n || t.viewFactory && viewsRequireLifecycle(t.viewFactory)\r\n || instruction.viewFactory && viewsRequireLifecycle(instruction.viewFactory);\r\n}\r\nfunction targetRequiresLifecycle(instruction) {\r\n var behaviors = instruction.behaviorInstructions;\r\n if (behaviors) {\r\n var i = behaviors.length;\r\n while (i--) {\r\n if (behaviorRequiresLifecycle(behaviors[i])) {\r\n return true;\r\n }\r\n }\r\n }\r\n return instruction.viewFactory && viewsRequireLifecycle(instruction.viewFactory);\r\n}\r\nfunction viewsRequireLifecycle(viewFactory) {\r\n if ('_viewsRequireLifecycle' in viewFactory) {\r\n return viewFactory._viewsRequireLifecycle;\r\n }\r\n viewFactory._viewsRequireLifecycle = false;\r\n if (viewFactory.viewFactory) {\r\n viewFactory._viewsRequireLifecycle = viewsRequireLifecycle(viewFactory.viewFactory);\r\n return viewFactory._viewsRequireLifecycle;\r\n }\r\n if (viewFactory.template.querySelector('.au-animate')) {\r\n viewFactory._viewsRequireLifecycle = true;\r\n return true;\r\n }\r\n for (var id in viewFactory.instructions) {\r\n if (targetRequiresLifecycle(viewFactory.instructions[id])) {\r\n viewFactory._viewsRequireLifecycle = true;\r\n return true;\r\n }\r\n }\r\n viewFactory._viewsRequireLifecycle = false;\r\n return false;\r\n}\n\nvar AbstractRepeater = (function () {\r\n function AbstractRepeater(options) {\r\n Object.assign(this, {\r\n local: 'items',\r\n viewsRequireLifecycle: true\r\n }, options);\r\n }\r\n AbstractRepeater.prototype.viewCount = function () {\r\n throw new Error('subclass must implement `viewCount`');\r\n };\r\n AbstractRepeater.prototype.views = function () {\r\n throw new Error('subclass must implement `views`');\r\n };\r\n AbstractRepeater.prototype.view = function (index) {\r\n throw new Error('subclass must implement `view`');\r\n };\r\n AbstractRepeater.prototype.matcher = function () {\r\n throw new Error('subclass must implement `matcher`');\r\n };\r\n AbstractRepeater.prototype.addView = function (bindingContext, overrideContext) {\r\n throw new Error('subclass must implement `addView`');\r\n };\r\n AbstractRepeater.prototype.insertView = function (index, bindingContext, overrideContext) {\r\n throw new Error('subclass must implement `insertView`');\r\n };\r\n AbstractRepeater.prototype.moveView = function (sourceIndex, targetIndex) {\r\n throw new Error('subclass must implement `moveView`');\r\n };\r\n AbstractRepeater.prototype.removeAllViews = function (returnToCache, skipAnimation) {\r\n throw new Error('subclass must implement `removeAllViews`');\r\n };\r\n AbstractRepeater.prototype.removeViews = function (viewsToRemove, returnToCache, skipAnimation) {\r\n throw new Error('subclass must implement `removeView`');\r\n };\r\n AbstractRepeater.prototype.removeView = function (index, returnToCache, skipAnimation) {\r\n throw new Error('subclass must implement `removeView`');\r\n };\r\n AbstractRepeater.prototype.updateBindings = function (view) {\r\n throw new Error('subclass must implement `updateBindings`');\r\n };\r\n return AbstractRepeater;\r\n}());\n\nvar matcherExtractionMarker = '__marker_extracted__';\r\nvar Repeat = (function (_super) {\r\n __extends(Repeat, _super);\r\n function Repeat(viewFactory, instruction, viewSlot, viewResources, observerLocator, strategyLocator) {\r\n var _this = _super.call(this, {\r\n local: 'item',\r\n viewsRequireLifecycle: viewsRequireLifecycle(viewFactory)\r\n }) || this;\r\n _this.viewFactory = viewFactory;\r\n _this.instruction = instruction;\r\n _this.viewSlot = viewSlot;\r\n _this.lookupFunctions = viewResources.lookupFunctions;\r\n _this.observerLocator = observerLocator;\r\n _this.key = 'key';\r\n _this.value = 'value';\r\n _this.strategyLocator = strategyLocator;\r\n _this.ignoreMutation = false;\r\n _this.sourceExpression = getItemsSourceExpression(_this.instruction, 'repeat.for');\r\n _this.isOneTime = isOneTime(_this.sourceExpression);\r\n _this.viewsRequireLifecycle = viewsRequireLifecycle(viewFactory);\r\n return _this;\r\n }\r\n Repeat_1 = Repeat;\r\n Repeat.prototype.call = function (context, changes) {\r\n this[context](this.items, changes);\r\n };\r\n Repeat.prototype.bind = function (bindingContext, overrideContext) {\r\n this.scope = { bindingContext: bindingContext, overrideContext: overrideContext };\r\n var instruction = this.instruction;\r\n if (!(matcherExtractionMarker in instruction)) {\r\n instruction[matcherExtractionMarker] = this._captureAndRemoveMatcherBinding();\r\n }\r\n this.matcherBinding = instruction[matcherExtractionMarker];\r\n this.itemsChanged();\r\n };\r\n Repeat.prototype.unbind = function () {\r\n this.scope = null;\r\n this.items = null;\r\n this.matcherBinding = null;\r\n this.viewSlot.removeAll(true, true);\r\n this._unsubscribeCollection();\r\n };\r\n Repeat.prototype._unsubscribeCollection = function () {\r\n if (this.collectionObserver) {\r\n this.collectionObserver.unsubscribe(this.callContext, this);\r\n this.collectionObserver = null;\r\n this.callContext = null;\r\n }\r\n };\r\n Repeat.prototype.itemsChanged = function () {\r\n var _this = this;\r\n this._unsubscribeCollection();\r\n if (!this.scope) {\r\n return;\r\n }\r\n var items = this.items;\r\n this.strategy = this.strategyLocator.getStrategy(items);\r\n if (!this.strategy) {\r\n throw new Error(\"Value for '\".concat(this.sourceExpression, \"' is non-repeatable\"));\r\n }\r\n if (!this.isOneTime && !this._observeInnerCollection()) {\r\n this._observeCollection();\r\n }\r\n this.ignoreMutation = true;\r\n this.strategy.instanceChanged(this, items);\r\n this.observerLocator.taskQueue.queueMicroTask(function () {\r\n _this.ignoreMutation = false;\r\n });\r\n };\r\n Repeat.prototype._getInnerCollection = function () {\r\n var expression = unwrapExpression(this.sourceExpression);\r\n if (!expression) {\r\n return null;\r\n }\r\n return expression.evaluate(this.scope, null);\r\n };\r\n Repeat.prototype.handleCollectionMutated = function (collection, changes) {\r\n if (!this.collectionObserver) {\r\n return;\r\n }\r\n if (this.ignoreMutation) {\r\n return;\r\n }\r\n this.strategy.instanceMutated(this, collection, changes);\r\n };\r\n Repeat.prototype.handleInnerCollectionMutated = function (collection, changes) {\r\n var _this = this;\r\n if (!this.collectionObserver) {\r\n return;\r\n }\r\n if (this.ignoreMutation) {\r\n return;\r\n }\r\n this.ignoreMutation = true;\r\n var newItems = this.sourceExpression.evaluate(this.scope, this.lookupFunctions);\r\n this.observerLocator.taskQueue.queueMicroTask(function () { return _this.ignoreMutation = false; });\r\n if (newItems === this.items) {\r\n this.itemsChanged();\r\n }\r\n else {\r\n this.items = newItems;\r\n }\r\n };\r\n Repeat.prototype._observeInnerCollection = function () {\r\n var items = this._getInnerCollection();\r\n var strategy = this.strategyLocator.getStrategy(items);\r\n if (!strategy) {\r\n return false;\r\n }\r\n this.collectionObserver = strategy.getCollectionObserver(this.observerLocator, items);\r\n if (!this.collectionObserver) {\r\n return false;\r\n }\r\n this.callContext = 'handleInnerCollectionMutated';\r\n this.collectionObserver.subscribe(this.callContext, this);\r\n return true;\r\n };\r\n Repeat.prototype._observeCollection = function () {\r\n var items = this.items;\r\n this.collectionObserver = this.strategy.getCollectionObserver(this.observerLocator, items);\r\n if (this.collectionObserver) {\r\n this.callContext = 'handleCollectionMutated';\r\n this.collectionObserver.subscribe(this.callContext, this);\r\n }\r\n };\r\n Repeat.prototype._captureAndRemoveMatcherBinding = function () {\r\n var viewFactory = this.viewFactory.viewFactory;\r\n if (viewFactory) {\r\n var template = viewFactory.template;\r\n var instructions = viewFactory.instructions;\r\n if (Repeat_1.useInnerMatcher) {\r\n return extractMatcherBindingExpression(instructions);\r\n }\r\n if (getChildrenCount(template) > 1) {\r\n return undefined;\r\n }\r\n var repeatedElement = getFirstElementChild(template);\r\n if (!repeatedElement.hasAttribute('au-target-id')) {\r\n return undefined;\r\n }\r\n var repeatedElementTargetId = repeatedElement.getAttribute('au-target-id');\r\n return extractMatcherBindingExpression(instructions, repeatedElementTargetId);\r\n }\r\n return undefined;\r\n };\r\n Repeat.prototype.viewCount = function () { return this.viewSlot.children.length; };\r\n Repeat.prototype.views = function () { return this.viewSlot.children; };\r\n Repeat.prototype.view = function (index) { return this.viewSlot.children[index]; };\r\n Repeat.prototype.matcher = function () {\r\n var matcherBinding = this.matcherBinding;\r\n return matcherBinding\r\n ? matcherBinding.sourceExpression.evaluate(this.scope, matcherBinding.lookupFunctions)\r\n : null;\r\n };\r\n Repeat.prototype.addView = function (bindingContext, overrideContext) {\r\n var view = this.viewFactory.create();\r\n view.bind(bindingContext, overrideContext);\r\n this.viewSlot.add(view);\r\n };\r\n Repeat.prototype.insertView = function (index, bindingContext, overrideContext) {\r\n var view = this.viewFactory.create();\r\n view.bind(bindingContext, overrideContext);\r\n this.viewSlot.insert(index, view);\r\n };\r\n Repeat.prototype.moveView = function (sourceIndex, targetIndex) {\r\n this.viewSlot.move(sourceIndex, targetIndex);\r\n };\r\n Repeat.prototype.removeAllViews = function (returnToCache, skipAnimation) {\r\n return this.viewSlot.removeAll(returnToCache, skipAnimation);\r\n };\r\n Repeat.prototype.removeViews = function (viewsToRemove, returnToCache, skipAnimation) {\r\n return this.viewSlot.removeMany(viewsToRemove, returnToCache, skipAnimation);\r\n };\r\n Repeat.prototype.removeView = function (index, returnToCache, skipAnimation) {\r\n return this.viewSlot.removeAt(index, returnToCache, skipAnimation);\r\n };\r\n Repeat.prototype.updateBindings = function (view) {\r\n var $view = view;\r\n var j = $view.bindings.length;\r\n while (j--) {\r\n updateOneTimeBinding($view.bindings[j]);\r\n }\r\n j = $view.controllers.length;\r\n while (j--) {\r\n var k = $view.controllers[j].boundProperties.length;\r\n while (k--) {\r\n var binding = $view.controllers[j].boundProperties[k].binding;\r\n updateOneTimeBinding(binding);\r\n }\r\n }\r\n };\r\n var Repeat_1;\r\n Repeat.useInnerMatcher = true;\r\n __decorate([\r\n bindable\r\n ], Repeat.prototype, \"items\", void 0);\r\n __decorate([\r\n bindable\r\n ], Repeat.prototype, \"local\", void 0);\r\n __decorate([\r\n bindable\r\n ], Repeat.prototype, \"key\", void 0);\r\n __decorate([\r\n bindable\r\n ], Repeat.prototype, \"value\", void 0);\r\n Repeat = Repeat_1 = __decorate([\r\n customAttribute('repeat'),\r\n templateController,\r\n inject(BoundViewFactory, TargetInstruction, ViewSlot, ViewResources, ObserverLocator, RepeatStrategyLocator)\r\n ], Repeat);\r\n return Repeat;\r\n}(AbstractRepeater));\r\nvar extractMatcherBindingExpression = function (instructions, targetedElementId) {\r\n var instructionIds = Object.keys(instructions);\r\n for (var i = 0; i < instructionIds.length; i++) {\r\n var instructionId = instructionIds[i];\r\n if (targetedElementId !== undefined && instructionId !== targetedElementId) {\r\n continue;\r\n }\r\n var expressions = instructions[instructionId].expressions;\r\n if (expressions) {\r\n for (var ii = 0; ii < expressions.length; ii++) {\r\n if (expressions[ii].targetProperty === 'matcher') {\r\n var matcherBindingExpression = expressions[ii];\r\n expressions.splice(ii, 1);\r\n return matcherBindingExpression;\r\n }\r\n }\r\n }\r\n }\r\n};\r\nvar getChildrenCount = function (el) {\r\n var childNodes = el.childNodes;\r\n var count = 0;\r\n for (var i = 0, ii = childNodes.length; ii > i; ++i) {\r\n if (childNodes[i].nodeType === 1) {\r\n ++count;\r\n }\r\n }\r\n return count;\r\n};\r\nvar getFirstElementChild = function (el) {\r\n var firstChild = el.firstChild;\r\n while (firstChild !== null) {\r\n if (firstChild.nodeType === 1) {\r\n return firstChild;\r\n }\r\n firstChild = firstChild.nextSibling;\r\n }\r\n return null;\r\n};\n\nvar aureliaHideClassName = 'aurelia-hide';\r\nvar aureliaHideClass = \".\".concat(aureliaHideClassName, \" { display:none !important; }\");\r\nfunction injectAureliaHideStyleAtHead() {\r\n DOM.injectStyles(aureliaHideClass);\r\n}\r\nfunction injectAureliaHideStyleAtBoundary(domBoundary) {\r\n if (FEATURE.shadowDOM && domBoundary && !domBoundary.hasAureliaHideStyle) {\r\n domBoundary.hasAureliaHideStyle = true;\r\n DOM.injectStyles(aureliaHideClass, domBoundary);\r\n }\r\n}\n\nvar Show = (function () {\r\n function Show(element, animator, domBoundary) {\r\n this.element = element;\r\n this.animator = animator;\r\n this.domBoundary = domBoundary;\r\n }\r\n Show.inject = function () {\r\n return [DOM.Element, Animator, Optional.of(DOM.boundary, true)];\r\n };\r\n Show.prototype.created = function () {\r\n injectAureliaHideStyleAtBoundary(this.domBoundary);\r\n };\r\n Show.prototype.valueChanged = function (newValue) {\r\n var element = this.element;\r\n var animator = this.animator;\r\n if (newValue) {\r\n animator.removeClass(element, aureliaHideClassName);\r\n }\r\n else {\r\n animator.addClass(element, aureliaHideClassName);\r\n }\r\n };\r\n Show.prototype.bind = function (bindingContext) {\r\n this.valueChanged(this.value);\r\n };\r\n Show = __decorate([\r\n customAttribute('show')\r\n ], Show);\r\n return Show;\r\n}());\n\nvar Hide = (function () {\r\n function Hide(element, animator, domBoundary) {\r\n this.element = element;\r\n this.animator = animator;\r\n this.domBoundary = domBoundary;\r\n }\r\n Hide.inject = function () {\r\n return [DOM.Element, Animator, Optional.of(DOM.boundary, true)];\r\n };\r\n Hide.prototype.created = function () {\r\n injectAureliaHideStyleAtBoundary(this.domBoundary);\r\n };\r\n Hide.prototype.valueChanged = function (newValue) {\r\n if (newValue) {\r\n this.animator.addClass(this.element, aureliaHideClassName);\r\n }\r\n else {\r\n this.animator.removeClass(this.element, aureliaHideClassName);\r\n }\r\n };\r\n Hide.prototype.bind = function (bindingContext) {\r\n this.valueChanged(this.value);\r\n };\r\n Hide.prototype.value = function (value) {\r\n throw new Error('Method not implemented.');\r\n };\r\n Hide = __decorate([\r\n customAttribute('hide')\r\n ], Hide);\r\n return Hide;\r\n}());\n\nvar HTMLSanitizer = (function () {\r\n function HTMLSanitizer() {\r\n }\r\n HTMLSanitizer.prototype.sanitize = function (input) {\r\n throw new Error(\"To protect the application against a wide variety of sophisticated XSS attacks.\\nPlease see https://aurelia.io/docs/binding/basics#element-content for instructions on how to use a secure solution like DOMPurify or sanitize-html.\");\r\n };\r\n return HTMLSanitizer;\r\n}());\n\nvar SanitizeHTMLValueConverter = (function () {\r\n function SanitizeHTMLValueConverter(sanitizer) {\r\n this.sanitizer = sanitizer;\r\n }\r\n SanitizeHTMLValueConverter.prototype.toView = function (untrustedMarkup) {\r\n if (untrustedMarkup === null || untrustedMarkup === undefined) {\r\n return null;\r\n }\r\n return this.sanitizer.sanitize(untrustedMarkup);\r\n };\r\n SanitizeHTMLValueConverter = __decorate([\r\n valueConverter('sanitizeHTML'),\r\n inject(HTMLSanitizer)\r\n ], SanitizeHTMLValueConverter);\r\n return SanitizeHTMLValueConverter;\r\n}());\n\nvar Replaceable = (function () {\r\n function Replaceable(viewFactory, viewSlot) {\r\n this.viewFactory = viewFactory;\r\n this.viewSlot = viewSlot;\r\n this.view = null;\r\n }\r\n Replaceable.prototype.bind = function (bindingContext, overrideContext) {\r\n if (this.view === null) {\r\n this.view = this.viewFactory.create();\r\n this.viewSlot.add(this.view);\r\n }\r\n this.view.bind(bindingContext, overrideContext);\r\n };\r\n Replaceable.prototype.unbind = function () {\r\n this.view.unbind();\r\n };\r\n Replaceable = __decorate([\r\n customAttribute('replaceable'),\r\n templateController,\r\n inject(BoundViewFactory, ViewSlot)\r\n ], Replaceable);\r\n return Replaceable;\r\n}());\n\nvar Focus = (function () {\r\n function Focus(element, taskQueue) {\r\n this.element = element;\r\n this.taskQueue = taskQueue;\r\n this.isAttached = false;\r\n this.needsApply = false;\r\n }\r\n Focus.inject = function () {\r\n return [DOM.Element, TaskQueue];\r\n };\r\n Focus.prototype.valueChanged = function () {\r\n if (this.isAttached) {\r\n this._apply();\r\n }\r\n else {\r\n this.needsApply = true;\r\n }\r\n };\r\n Focus.prototype._apply = function () {\r\n var _this = this;\r\n if (this.value) {\r\n this.taskQueue.queueMicroTask(function () {\r\n if (_this.value) {\r\n _this.element.focus();\r\n }\r\n });\r\n }\r\n else {\r\n this.element.blur();\r\n }\r\n };\r\n Focus.prototype.attached = function () {\r\n this.isAttached = true;\r\n if (this.needsApply) {\r\n this.needsApply = false;\r\n this._apply();\r\n }\r\n this.element.addEventListener('focus', this);\r\n this.element.addEventListener('blur', this);\r\n };\r\n Focus.prototype.detached = function () {\r\n this.isAttached = false;\r\n this.element.removeEventListener('focus', this);\r\n this.element.removeEventListener('blur', this);\r\n };\r\n Focus.prototype.handleEvent = function (e) {\r\n if (e.type === 'focus') {\r\n this.value = true;\r\n }\r\n else if (DOM.activeElement !== this.element) {\r\n this.value = false;\r\n }\r\n };\r\n Focus = __decorate([\r\n customAttribute('focus', bindingMode.twoWay)\r\n ], Focus);\r\n return Focus;\r\n}());\n\nvar cssUrlMatcher = /url\\((?!['\"]data)([^)]+)\\)/gi;\r\nfunction fixupCSSUrls(address, css) {\r\n if (typeof css !== 'string') {\r\n throw new Error(\"Failed loading required CSS file: \".concat(address));\r\n }\r\n return css.replace(cssUrlMatcher, function (match, p1) {\r\n var quote = p1.charAt(0);\r\n if (quote === '\\'' || quote === '\"') {\r\n p1 = p1.substr(1, p1.length - 2);\r\n }\r\n return 'url(\\'' + relativeToFile(p1, address) + '\\')';\r\n });\r\n}\r\nvar CSSResource = (function () {\r\n function CSSResource(address) {\r\n this.address = address;\r\n this._scoped = null;\r\n this._global = false;\r\n this._alreadyGloballyInjected = false;\r\n }\r\n CSSResource.prototype.initialize = function (container, Target) {\r\n this._scoped = new Target(this);\r\n };\r\n CSSResource.prototype.register = function (registry, name) {\r\n if (name === 'scoped') {\r\n registry.registerViewEngineHooks(this._scoped);\r\n }\r\n else {\r\n this._global = true;\r\n }\r\n };\r\n CSSResource.prototype.load = function (container) {\r\n var _this = this;\r\n return container.get(Loader)\r\n .loadText(this.address)\r\n .catch(function () { return null; })\r\n .then(function (text) {\r\n text = fixupCSSUrls(_this.address, text);\r\n _this._scoped.css = text;\r\n if (_this._global) {\r\n _this._alreadyGloballyInjected = true;\r\n DOM.injectStyles(text);\r\n }\r\n return _this;\r\n });\r\n };\r\n return CSSResource;\r\n}());\r\nvar CSSViewEngineHooks = (function () {\r\n function CSSViewEngineHooks(owner) {\r\n this.owner = owner;\r\n this.css = null;\r\n }\r\n CSSViewEngineHooks.prototype.beforeCompile = function (content, resources, instruction) {\r\n if (instruction.targetShadowDOM) {\r\n DOM.injectStyles(this.css, content, true);\r\n }\r\n else if (FEATURE.scopedCSS) {\r\n var styleNode = DOM.injectStyles(this.css, content, true);\r\n styleNode.setAttribute('scoped', 'scoped');\r\n }\r\n else if (this._global && !this.owner._alreadyGloballyInjected) {\r\n DOM.injectStyles(this.css);\r\n this.owner._alreadyGloballyInjected = true;\r\n }\r\n };\r\n return CSSViewEngineHooks;\r\n}());\r\nfunction _createCSSResource(address) {\r\n var ViewCSS = (function (_super) {\r\n __extends(ViewCSS, _super);\r\n function ViewCSS() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ViewCSS = __decorate([\r\n resource(new CSSResource(address))\r\n ], ViewCSS);\r\n return ViewCSS;\r\n }(CSSViewEngineHooks));\r\n return ViewCSS;\r\n}\n\nvar AttrBindingBehavior = (function () {\r\n function AttrBindingBehavior() {\r\n }\r\n AttrBindingBehavior.prototype.bind = function (binding, source) {\r\n binding.targetObserver = new DataAttributeObserver(binding.target, binding.targetProperty);\r\n };\r\n AttrBindingBehavior.prototype.unbind = function (binding, source) {\r\n };\r\n AttrBindingBehavior = __decorate([\r\n bindingBehavior('attr')\r\n ], AttrBindingBehavior);\r\n return AttrBindingBehavior;\r\n}());\n\nvar modeBindingBehavior = {\r\n bind: function (binding, source, lookupFunctions) {\r\n binding.originalMode = binding.mode;\r\n binding.mode = this.mode;\r\n },\r\n unbind: function (binding, source) {\r\n binding.mode = binding.originalMode;\r\n binding.originalMode = null;\r\n }\r\n};\r\nvar OneTimeBindingBehavior = (function () {\r\n function OneTimeBindingBehavior() {\r\n this.mode = bindingMode.oneTime;\r\n }\r\n OneTimeBindingBehavior = __decorate([\r\n mixin(modeBindingBehavior),\r\n bindingBehavior('oneTime')\r\n ], OneTimeBindingBehavior);\r\n return OneTimeBindingBehavior;\r\n}());\r\nvar OneWayBindingBehavior = (function () {\r\n function OneWayBindingBehavior() {\r\n this.mode = bindingMode.toView;\r\n }\r\n OneWayBindingBehavior = __decorate([\r\n mixin(modeBindingBehavior),\r\n bindingBehavior('oneWay')\r\n ], OneWayBindingBehavior);\r\n return OneWayBindingBehavior;\r\n}());\r\nvar ToViewBindingBehavior = (function () {\r\n function ToViewBindingBehavior() {\r\n this.mode = bindingMode.toView;\r\n }\r\n ToViewBindingBehavior = __decorate([\r\n mixin(modeBindingBehavior),\r\n bindingBehavior('toView')\r\n ], ToViewBindingBehavior);\r\n return ToViewBindingBehavior;\r\n}());\r\nvar FromViewBindingBehavior = (function () {\r\n function FromViewBindingBehavior() {\r\n this.mode = bindingMode.fromView;\r\n }\r\n FromViewBindingBehavior = __decorate([\r\n mixin(modeBindingBehavior),\r\n bindingBehavior('fromView')\r\n ], FromViewBindingBehavior);\r\n return FromViewBindingBehavior;\r\n}());\r\nvar TwoWayBindingBehavior = (function () {\r\n function TwoWayBindingBehavior() {\r\n this.mode = bindingMode.twoWay;\r\n }\r\n TwoWayBindingBehavior = __decorate([\r\n mixin(modeBindingBehavior),\r\n bindingBehavior('twoWay')\r\n ], TwoWayBindingBehavior);\r\n return TwoWayBindingBehavior;\r\n}());\n\nfunction throttle(newValue) {\r\n var _this = this;\r\n var state = this.throttleState;\r\n var elapsed = +new Date() - state.last;\r\n if (elapsed >= state.delay) {\r\n clearTimeout(state.timeoutId);\r\n state.timeoutId = null;\r\n state.last = +new Date();\r\n this.throttledMethod(newValue);\r\n return;\r\n }\r\n state.newValue = newValue;\r\n if (state.timeoutId === null) {\r\n state.timeoutId = setTimeout(function () {\r\n state.timeoutId = null;\r\n state.last = +new Date();\r\n _this.throttledMethod(state.newValue);\r\n }, state.delay - elapsed);\r\n }\r\n}\r\nvar ThrottleBindingBehavior = (function () {\r\n function ThrottleBindingBehavior() {\r\n }\r\n ThrottleBindingBehavior.prototype.bind = function (binding, source, delay) {\r\n if (delay === void 0) { delay = 200; }\r\n var methodToThrottle = 'updateTarget';\r\n if (binding.callSource) {\r\n methodToThrottle = 'callSource';\r\n }\r\n else if (binding.updateSource && binding.mode === bindingMode.twoWay) {\r\n methodToThrottle = 'updateSource';\r\n }\r\n binding.throttledMethod = binding[methodToThrottle];\r\n binding.throttledMethod.originalName = methodToThrottle;\r\n binding[methodToThrottle] = throttle;\r\n binding.throttleState = {\r\n delay: delay,\r\n last: 0,\r\n timeoutId: null\r\n };\r\n };\r\n ThrottleBindingBehavior.prototype.unbind = function (binding, source) {\r\n var methodToRestore = binding.throttledMethod.originalName;\r\n binding[methodToRestore] = binding.throttledMethod;\r\n binding.throttledMethod = null;\r\n clearTimeout(binding.throttleState.timeoutId);\r\n binding.throttleState = null;\r\n };\r\n ThrottleBindingBehavior = __decorate([\r\n bindingBehavior('throttle')\r\n ], ThrottleBindingBehavior);\r\n return ThrottleBindingBehavior;\r\n}());\n\nvar unset = {};\r\nfunction debounceCallSource(event) {\r\n var _this = this;\r\n var state = this.debounceState;\r\n clearTimeout(state.timeoutId);\r\n state.timeoutId = setTimeout(function () { return _this.debouncedMethod(event); }, state.delay);\r\n}\r\nfunction debounceCall(context, newValue, oldValue) {\r\n var _this = this;\r\n var state = this.debounceState;\r\n clearTimeout(state.timeoutId);\r\n if (context !== state.callContextToDebounce) {\r\n state.oldValue = unset;\r\n this.debouncedMethod(context, newValue, oldValue);\r\n return;\r\n }\r\n if (state.oldValue === unset) {\r\n state.oldValue = oldValue;\r\n }\r\n state.timeoutId = setTimeout(function () {\r\n var _oldValue = state.oldValue;\r\n state.oldValue = unset;\r\n _this.debouncedMethod(context, newValue, _oldValue);\r\n }, state.delay);\r\n}\r\nvar DebounceBindingBehavior = (function () {\r\n function DebounceBindingBehavior() {\r\n }\r\n DebounceBindingBehavior.prototype.bind = function (binding, source, delay) {\r\n if (delay === void 0) { delay = 200; }\r\n var isCallSource = binding.callSource !== undefined;\r\n var methodToDebounce = isCallSource ? 'callSource' : 'call';\r\n var debouncer = isCallSource ? debounceCallSource : debounceCall;\r\n var mode = binding.mode;\r\n var callContextToDebounce = mode === bindingMode.twoWay || mode === bindingMode.fromView ? targetContext : sourceContext;\r\n binding.debouncedMethod = binding[methodToDebounce];\r\n binding.debouncedMethod.originalName = methodToDebounce;\r\n binding[methodToDebounce] = debouncer;\r\n binding.debounceState = {\r\n callContextToDebounce: callContextToDebounce,\r\n delay: delay,\r\n timeoutId: 0,\r\n oldValue: unset\r\n };\r\n };\r\n DebounceBindingBehavior.prototype.unbind = function (binding, source) {\r\n var methodToRestore = binding.debouncedMethod.originalName;\r\n binding[methodToRestore] = binding.debouncedMethod;\r\n binding.debouncedMethod = null;\r\n clearTimeout(binding.debounceState.timeoutId);\r\n binding.debounceState = null;\r\n };\r\n DebounceBindingBehavior = __decorate([\r\n bindingBehavior('debounce')\r\n ], DebounceBindingBehavior);\r\n return DebounceBindingBehavior;\r\n}());\n\nfunction findOriginalEventTarget(event) {\r\n return (event.path && event.path[0]) || (event.deepPath && event.deepPath[0]) || event.target;\r\n}\r\nfunction handleSelfEvent(event) {\r\n var target = findOriginalEventTarget(event);\r\n if (this.target !== target) {\r\n return;\r\n }\r\n this.selfEventCallSource(event);\r\n}\r\nvar SelfBindingBehavior = (function () {\r\n function SelfBindingBehavior() {\r\n }\r\n SelfBindingBehavior.prototype.bind = function (binding, source) {\r\n if (!binding.callSource || !binding.targetEvent) {\r\n throw new Error('Self binding behavior only supports event.');\r\n }\r\n binding.selfEventCallSource = binding.callSource;\r\n binding.callSource = handleSelfEvent;\r\n };\r\n SelfBindingBehavior.prototype.unbind = function (binding, source) {\r\n binding.callSource = binding.selfEventCallSource;\r\n binding.selfEventCallSource = null;\r\n };\r\n SelfBindingBehavior = __decorate([\r\n bindingBehavior('self')\r\n ], SelfBindingBehavior);\r\n return SelfBindingBehavior;\r\n}());\n\nvar BindingSignaler = (function () {\r\n function BindingSignaler() {\r\n this.signals = {};\r\n }\r\n BindingSignaler.prototype.signal = function (name) {\r\n var bindings = this.signals[name];\r\n if (!bindings) {\r\n return;\r\n }\r\n var i = bindings.length;\r\n while (i--) {\r\n bindings[i].call(sourceContext);\r\n }\r\n };\r\n return BindingSignaler;\r\n}());\n\nvar SignalBindingBehavior = (function () {\r\n function SignalBindingBehavior(bindingSignaler) {\r\n this.signals = bindingSignaler.signals;\r\n }\r\n SignalBindingBehavior.inject = function () { return [BindingSignaler]; };\r\n SignalBindingBehavior.prototype.bind = function (binding, source) {\r\n var names = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n names[_i - 2] = arguments[_i];\r\n }\r\n if (!binding.updateTarget) {\r\n throw new Error('Only property bindings and string interpolation bindings can be signaled. Trigger, delegate and call bindings cannot be signaled.');\r\n }\r\n var signals = this.signals;\r\n if (names.length === 1) {\r\n var name_1 = names[0];\r\n var bindings = signals[name_1] || (signals[name_1] = []);\r\n bindings.push(binding);\r\n binding.signalName = name_1;\r\n }\r\n else if (names.length > 1) {\r\n var i = names.length;\r\n while (i--) {\r\n var name_2 = names[i];\r\n var bindings = signals[name_2] || (signals[name_2] = []);\r\n bindings.push(binding);\r\n }\r\n binding.signalName = names;\r\n }\r\n else {\r\n throw new Error('Signal name is required.');\r\n }\r\n };\r\n SignalBindingBehavior.prototype.unbind = function (binding, source) {\r\n var signals = this.signals;\r\n var name = binding.signalName;\r\n binding.signalName = null;\r\n if (Array.isArray(name)) {\r\n var names = name;\r\n var i = names.length;\r\n while (i--) {\r\n var n = names[i];\r\n var bindings = signals[n];\r\n bindings.splice(bindings.indexOf(binding), 1);\r\n }\r\n }\r\n else {\r\n var bindings = signals[name];\r\n bindings.splice(bindings.indexOf(binding), 1);\r\n }\r\n };\r\n SignalBindingBehavior = __decorate([\r\n bindingBehavior('signal')\r\n ], SignalBindingBehavior);\r\n return SignalBindingBehavior;\r\n}());\n\nvar eventNamesRequired = 'The updateTrigger binding behavior requires at least one event name argument: eg ';\r\nvar notApplicableMessage = 'The updateTrigger binding behavior can only be applied to two-way/ from-view bindings on input/select elements.';\r\nvar UpdateTriggerBindingBehavior = (function () {\r\n function UpdateTriggerBindingBehavior() {\r\n }\r\n UpdateTriggerBindingBehavior.prototype.bind = function (binding, source) {\r\n var events = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n events[_i - 2] = arguments[_i];\r\n }\r\n if (events.length === 0) {\r\n throw new Error(eventNamesRequired);\r\n }\r\n if (binding.mode !== bindingMode.twoWay && binding.mode !== bindingMode.fromView) {\r\n throw new Error(notApplicableMessage);\r\n }\r\n var targetObserver = binding.observerLocator.getObserver(binding.target, binding.targetProperty);\r\n if (!targetObserver.handler) {\r\n throw new Error(notApplicableMessage);\r\n }\r\n binding.targetObserver = targetObserver;\r\n targetObserver.originalHandler = binding.targetObserver.handler;\r\n var handler = new EventSubscriber(events);\r\n targetObserver.handler = handler;\r\n };\r\n UpdateTriggerBindingBehavior.prototype.unbind = function (binding, source) {\r\n var targetObserver = binding.targetObserver;\r\n targetObserver.handler.dispose();\r\n targetObserver.handler = targetObserver.originalHandler;\r\n targetObserver.originalHandler = null;\r\n };\r\n UpdateTriggerBindingBehavior = __decorate([\r\n bindingBehavior('updateTrigger')\r\n ], UpdateTriggerBindingBehavior);\r\n return UpdateTriggerBindingBehavior;\r\n}());\n\nfunction _createDynamicElement(_a) {\r\n var name = _a.name, viewUrl = _a.viewUrl, bindableNames = _a.bindableNames, useShadowDOMmode = _a.useShadowDOMmode;\r\n var DynamicElement = (function () {\r\n function DynamicElement() {\r\n }\r\n DynamicElement.prototype.bind = function (bindingContext) {\r\n this.$parent = bindingContext;\r\n };\r\n DynamicElement = __decorate([\r\n customElement(name),\r\n useView(viewUrl)\r\n ], DynamicElement);\r\n return DynamicElement;\r\n }());\r\n for (var i = 0, ii = bindableNames.length; i < ii; ++i) {\r\n bindable(bindableNames[i])(DynamicElement);\r\n }\r\n switch (useShadowDOMmode) {\r\n case 'open':\r\n useShadowDOM({ mode: 'open' })(DynamicElement);\r\n break;\r\n case 'closed':\r\n useShadowDOM({ mode: 'closed' })(DynamicElement);\r\n break;\r\n case '':\r\n useShadowDOM(DynamicElement);\r\n break;\r\n case null:\r\n break;\r\n default:\r\n getLogger('aurelia-html-only-element')\r\n .warn(\"Expected 'use-shadow-dom' value to be \\\"close\\\", \\\"open\\\" or \\\"\\\", received \".concat(useShadowDOMmode));\r\n break;\r\n }\r\n return DynamicElement;\r\n}\n\nfunction getElementName(address) {\r\n return /([^\\/^\\?]+)\\.html/i.exec(address)[1].toLowerCase();\r\n}\r\nfunction configure$1(config) {\r\n var viewEngine = config.container.get(ViewEngine);\r\n var loader = config.aurelia.loader;\r\n viewEngine.addResourcePlugin('.html', {\r\n 'fetch': function (viewUrl) {\r\n return loader.loadTemplate(viewUrl).then(function (registryEntry) {\r\n var _a;\r\n var bindableNames = registryEntry.template.getAttribute('bindable');\r\n var useShadowDOMmode = registryEntry.template.getAttribute('use-shadow-dom');\r\n var name = getElementName(viewUrl);\r\n if (bindableNames) {\r\n bindableNames = bindableNames.split(',').map(function (x) { return x.trim(); });\r\n registryEntry.template.removeAttribute('bindable');\r\n }\r\n else {\r\n bindableNames = [];\r\n }\r\n return _a = {}, _a[name] = _createDynamicElement({ name: name, viewUrl: viewUrl, bindableNames: bindableNames, useShadowDOMmode: useShadowDOMmode }), _a;\r\n });\r\n }\r\n });\r\n}\n\nfunction configure(config) {\r\n injectAureliaHideStyleAtHead();\r\n config.globalResources(Compose, If, Else, With, Repeat, Show, Hide, Replaceable, Focus, SanitizeHTMLValueConverter, OneTimeBindingBehavior, OneWayBindingBehavior, ToViewBindingBehavior, FromViewBindingBehavior, TwoWayBindingBehavior, ThrottleBindingBehavior, DebounceBindingBehavior, SelfBindingBehavior, SignalBindingBehavior, UpdateTriggerBindingBehavior, AttrBindingBehavior);\r\n configure$1(config);\r\n var viewEngine = config.container.get(ViewEngine);\r\n var styleResourcePlugin = {\r\n fetch: function (address) {\r\n var _a;\r\n return _a = {}, _a[address] = _createCSSResource(address), _a;\r\n }\r\n };\r\n ['.css', '.less', '.sass', '.scss', '.styl'].forEach(function (ext) { return viewEngine.addResourcePlugin(ext, styleResourcePlugin); });\r\n}\n\nexport { AbstractRepeater, ArrayRepeatStrategy, AttrBindingBehavior, BindingSignaler, Compose, DebounceBindingBehavior, Else, Focus, FromViewBindingBehavior, HTMLSanitizer, Hide, If, MapRepeatStrategy, NullRepeatStrategy, NumberRepeatStrategy, OneTimeBindingBehavior, OneWayBindingBehavior, Repeat, RepeatStrategyLocator, Replaceable, SanitizeHTMLValueConverter, SelfBindingBehavior, SetRepeatStrategy, Show, SignalBindingBehavior, ThrottleBindingBehavior, ToViewBindingBehavior, TwoWayBindingBehavior, UpdateTriggerBindingBehavior, With, configure, createFullOverrideContext, getItemsSourceExpression, isOneTime, unwrapExpression, updateOneTimeBinding, updateOverrideContext, viewsRequireLifecycle };\n//# sourceMappingURL=aurelia-templating-resources.js.map\n"],"names":["ActivationStrategy","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","__decorate","decorators","target","key","desc","c","arguments","length","r","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","Compose","element","container","compositionEngine","viewSlot","viewResources","taskQueue","activationStrategy","InvokeLifecycle","currentController","currentViewModel","changes","inject","created","owningView","bind","bindingContext","overrideContext","view","viewModel","model","pendingTask","processChanges","unbind","removeAll","modelChanged","newValue","oldValue","requestUpdate","viewChanged","viewModelChanged","composer","vm","determineActivationStrategy","Replace","needsReInitialization","instruction","assign","host","swapOrder","createInstruction","compose","then","controller","activate","Promise","resolve","tryActivateViewModel","completeCompositionTask","reason","obj","_","isEmpty","updateRequested","queueMicroTask","IfCore","viewFactory","showing","cache","isCaching","remove","returnToCache","_show","isBound","add","_hide","_this","removed","_unbindView","If","_super","apply","condition","conditionChanged","_update","show","promise","animating","elseVm","_swap","all","primaryProperty","Else","_registerInIf","ifVm","previous","anchor","previousSibling","au","if","Error","With","parentOverrideContext","valueChanged","value","oneTime","updateOverrideContexts","views","startIndex","updateOverrideContext","createFullOverrideContext","repeat","data","index","scope","local","first","last","even","$index","$first","$last","$middle","$odd","$even","getItemsSourceExpression","attrName","behaviorInstructions","filter","bi","originalAttrName","attributes","items","sourceExpression","unwrapExpression","expression","unwrapped","isOneTime","name","updateOneTimeBinding","binding","mode","updateOneTimeBindings","indexOf","array","item","matcher","ArrayRepeatStrategy","getCollectionObserver","observerLocator","getArrayObserver","instanceChanged","$repeat","itemsLength","children","viewsLength","viewsRequireLifecycle","childrenSnapshot","slice","itemNameInBindingContext","matcher_1","itemsPreviouslyInViews_1","viewsToRemove","oldItem","push","updateViews","removePromise","removeViews","indexOfView","insertView","splice","undefined","moveView","_inPlaceProcessItems","removeAllViews","_standardProcessInstanceChanged","ii","addView","viewCount","removeView","middle","updateBindings","instanceMutated","splices","__queuedSplices","_a","addedCount","__array","maybePromise","_runSplices","queuedSplices_1","runQueuedSplices_1","nextPromise","removeDelta","rmPromises","j","jj","viewOrPromise","spliceIndexLow","_handleAddedSplices","spliceIndex","arrayLength","addIndex","end","MapRepeatStrategy","getMapObserver","_standardProcessItems","forEach","size","map","records","removeIndex","record","type","_getViewIndexByKey","get","NullRepeatStrategy","NumberRepeatStrategy","childrenLength","Math","floor","SetRepeatStrategy","getSetObserver","set","max","_getViewIndexByValue","RepeatStrategyLocator","matchers","strategies","addStrategy","Map","Set","strategy","getStrategy","lifecycleOptionalBehaviors","behaviorRequiresLifecycle","t","elementName","attributeName","handlesAttached","handlesBind","handlesCreated","handlesDetached","handlesUnbind","targetRequiresLifecycle","behaviors","_viewsRequireLifecycle","template","querySelector","id","instructions","AbstractRepeater","options","sourceIndex","targetIndex","skipAnimation","matcherExtractionMarker","Repeat","strategyLocator","lookupFunctions","ignoreMutation","Repeat_1","context","_captureAndRemoveMatcherBinding","matcherBinding","itemsChanged","_unsubscribeCollection","collectionObserver","unsubscribe","callContext","concat","_observeInnerCollection","_observeCollection","_getInnerCollection","evaluate","handleCollectionMutated","collection","handleInnerCollectionMutated","newItems","subscribe","useInnerMatcher","extractMatcherBindingExpression","getChildrenCount","repeatedElement","getFirstElementChild","hasAttribute","repeatedElementTargetId","getAttribute","insert","move","removeMany","removeAt","$view","bindings","controllers","k","boundProperties","targetedElementId","instructionIds","keys","instructionId","expressions","targetProperty","matcherBindingExpression","el","childNodes","count","nodeType","firstChild","nextSibling","aureliaHideClassName","aureliaHideClass","injectAureliaHideStyleAtBoundary","domBoundary","hasAureliaHideStyle","Show","animator","removeClass","addClass","Hide","HTMLSanitizer","sanitize","input","SanitizeHTMLValueConverter","sanitizer","toView","untrustedMarkup","Replaceable","Focus","isAttached","needsApply","_apply","focus","blur","attached","addEventListener","detached","removeEventListener","handleEvent","e","cssUrlMatcher","CSSResource","address","_scoped","_global","_alreadyGloballyInjected","initialize","Target","register","registry","registerViewEngineHooks","load","loadText","catch","text","css","replace","match","p1","quote","charAt","substr","fixupCSSUrls","CSSViewEngineHooks","owner","beforeCompile","content","resources","targetShadowDOM","setAttribute","AttrBindingBehavior","source","targetObserver","modeBindingBehavior","originalMode","OneTimeBindingBehavior","OneWayBindingBehavior","ToViewBindingBehavior","FromViewBindingBehavior","TwoWayBindingBehavior","throttle","state","throttleState","elapsed","Date","delay","clearTimeout","timeoutId","throttledMethod","setTimeout","ThrottleBindingBehavior","methodToThrottle","callSource","updateSource","originalName","unset","debounceCallSource","event","debounceState","debouncedMethod","debounceCall","callContextToDebounce","_oldValue","DebounceBindingBehavior","isCallSource","methodToDebounce","debouncer","handleSelfEvent","path","deepPath","findOriginalEventTarget","selfEventCallSource","SelfBindingBehavior","targetEvent","BindingSignaler","signals","signal","SignalBindingBehavior","bindingSignaler","names","_i","updateTarget","name_1","signalName","name_2","isArray","notApplicableMessage","UpdateTriggerBindingBehavior","events","getObserver","handler","originalHandler","dispose","configure","config","globalResources","viewEngine","loader","aurelia","addResourcePlugin","viewUrl","loadTemplate","registryEntry","bindableNames","useShadowDOMmode","exec","toLowerCase","split","x","trim","removeAttribute","DynamicElement","$parent","warn","_createDynamicElement","configure$1","styleResourcePlugin","fetch","ViewCSS","_createCSSResource","ext"],"sourceRoot":""}