{"version":3,"file":"vendors-6b033f20.cbeb19fd4566a354b1ce.bundle.js","mappings":";;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;AC/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;ACnCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["webpack://SpotOnDays.WebClient/./node_modules/@appex/aurelia-dompurify/dist/native-modules/dompurify-converter.js","webpack://SpotOnDays.WebClient/./node_modules/@appex/aurelia-dompurify/dist/native-modules/dompurify-sanitizer.js","webpack://SpotOnDays.WebClient/./node_modules/@appex/aurelia-dompurify/dist/native-modules/index.js","webpack://SpotOnDays.WebClient/./node_modules/aurelia-animator-velocity/dist/native-modules/aurelia-animator-velocity.js"],"sourcesContent":["var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(k, v);\n};\nimport { valueConverter } from 'aurelia-binding';\nimport { DOMPurifySanitizer } from './dompurify-sanitizer';\nimport { autoinject } from 'aurelia-dependency-injection';\nvar DOMPurifyValueConverter = (function () {\n function DOMPurifyValueConverter(domPurifySanitizer) {\n this.domPurifySanitizer = domPurifySanitizer;\n }\n DOMPurifyValueConverter.prototype.toView = function (untrustedMarkup, config) {\n if (untrustedMarkup === null || untrustedMarkup === undefined) {\n return null;\n }\n return this.domPurifySanitizer.sanitize(untrustedMarkup, config);\n };\n DOMPurifyValueConverter = __decorate([\n valueConverter('dompurify'),\n autoinject,\n __metadata(\"design:paramtypes\", [DOMPurifySanitizer])\n ], DOMPurifyValueConverter);\n return DOMPurifyValueConverter;\n}());\nexport { DOMPurifyValueConverter };\n\n//# sourceMappingURL=dompurify-converter.js.map\n","var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nimport { HTMLSanitizer } from 'aurelia-templating-resources';\nimport { getLogger } from 'aurelia-logging';\nimport * as DOMPurify from 'dompurify';\nvar domPurifyNotified = false;\nvar DOMPurifySanitizer = (function (_super) {\n __extends(DOMPurifySanitizer, _super);\n function DOMPurifySanitizer() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DOMPurifySanitizer.prototype.sanitize = function (input, config) {\n if (!domPurifyNotified) {\n getLogger('dompurify-sanitizer').debug(\"Using DOMPurify instead of Aurelia's default sanitizer\");\n domPurifyNotified = true;\n }\n return DOMPurify.sanitize(input, config !== null && config !== void 0 ? config : DOMPurifySanitizer.defaultConfig);\n };\n return DOMPurifySanitizer;\n}(HTMLSanitizer));\nexport { DOMPurifySanitizer };\n\n//# sourceMappingURL=dompurify-sanitizer.js.map\n","import { HTMLSanitizer, SanitizeHTMLValueConverter } from 'aurelia-templating-resources';\nimport { DOMPurifySanitizer } from './dompurify-sanitizer';\nimport { DOMPurifyValueConverter } from './dompurify-converter';\nexport function configure(frameworkConfiguration, config) {\n DOMPurifySanitizer.defaultConfig = config;\n frameworkConfiguration.globalResources(DOMPurifyValueConverter);\n if (frameworkConfiguration.aurelia.resources['valueConverters']['sanitizeHTML']) {\n frameworkConfiguration.aurelia.resources['valueConverters']['sanitizeHTML'] = frameworkConfiguration.container.get(SanitizeHTMLValueConverter);\n }\n}\nHTMLSanitizer['get'] = function (container) {\n return new DOMPurifySanitizer();\n};\nHTMLSanitizer['protocol:aurelia:resolver'] = true;\nSanitizeHTMLValueConverter['get'] = function (container) {\n return new SanitizeHTMLValueConverter(container.get(HTMLSanitizer));\n};\nSanitizeHTMLValueConverter['protocol:aurelia:resolver'] = true;\nexport { DOMPurifySanitizer };\n\n//# sourceMappingURL=index.js.map\n","\n\nimport velocity from 'velocity-animate';\nimport { animationEvent, TemplatingEngine } from 'aurelia-templating';\nimport { DOM, PLATFORM } from 'aurelia-pal';\n\nimport 'velocity-animate/velocity.ui';\nvar aureliaHideClassName = 'aurelia-hide';\n\nexport var VelocityAnimator = function () {\n function VelocityAnimator(container) {\n \n\n this.options = {\n duration: 400,\n easing: 'linear'\n };\n this.isAnimating = false;\n this.enterAnimation = { properties: ':enter', options: { easing: 'ease-in', duration: 200 } };\n this.leaveAnimation = { properties: ':leave', options: { easing: 'ease-in', duration: 200 } };\n this.easings = [];\n this.effects = {\n ':enter': 'fadeIn',\n ':leave': 'fadeOut',\n ':show': 'fadeIn',\n ':hide': 'fadeOut'\n };\n\n this.container = container || DOM;\n this.easings = Object.assign(velocity.Easings, this.easings);\n this.effects = Object.assign(velocity.Redirects, this.effects);\n }\n\n VelocityAnimator.prototype.animate = function animate(element, nameOrProps, options, silent) {\n if (!element) return Promise.reject(new Error('first argument (element) must be defined'));\n if (!nameOrProps) return Promise.reject(new Error('second argument (animation name or properties) must be defined'));\n if (options && (!(options instanceof Object) || Array.isArray(options))) return Promise.reject(new Error('third argument (options) must be an Object'));\n\n this.isAnimating = true;\n\n var _this = this;\n var optionOverrides = {\n complete: function complete(el) {\n _this.isAnimating = false;\n if (!silent) dispatch(el, 'animateDone');\n if (options && options.complete) options.complete.apply(this, arguments);\n }\n };\n\n if (typeof element === 'string') element = this.container.querySelectorAll(element);\n\n if (!element || element.length === 0) return Promise.resolve(element);\n\n if (!silent) dispatch(element, 'animateBegin');\n\n if (typeof nameOrProps === 'string') {\n nameOrProps = this.resolveEffectAlias(nameOrProps);\n if (!this.effects[nameOrProps]) return Promise.reject(new Error('effect with name `' + nameOrProps + '` was not found'));\n }\n\n var velocityOptions = Object.assign({}, this.options, options, optionOverrides);\n var velocityPromise = velocity(element, nameOrProps, velocityOptions);\n return velocityPromise ? velocityPromise : Promise.reject(new Error('velocity animation failed due to invalid arguments'));\n };\n\n VelocityAnimator.prototype.stop = function stop(element, clearQueue) {\n velocity(element, 'stop', clearQueue);\n this.isAnimating = false;\n return this;\n };\n\n VelocityAnimator.prototype.reverse = function reverse(element) {\n velocity(element, 'reverse');\n return this;\n };\n\n VelocityAnimator.prototype.rewind = function rewind(element) {\n velocity(name, 'rewind');\n return this;\n };\n\n VelocityAnimator.prototype.registerEffect = function registerEffect(name, props) {\n if (name[0] === ':') {\n if (typeof props === 'string') {\n this.effects[name] = props;\n } else {\n throw new Error('second parameter must be a string when registering aliases');\n }\n } else {\n velocity.RegisterEffect(name, props);\n }\n return this;\n };\n\n VelocityAnimator.prototype.unregisterEffect = function unregisterEffect(name) {\n delete this.effects[name];\n return this;\n };\n\n VelocityAnimator.prototype.runSequence = function runSequence(sequence) {\n var _this2 = this;\n\n dispatch(PLATFORM.global, 'sequenceBegin');\n return new Promise(function (resolve, reject) {\n _this2.sequenceReject = resolve;\n var last = sequence[sequence.length - 1];\n last.options = last.options || last.o || {};\n last.options.complete = function () {\n if (!_this2.sequenceReject) return;\n _this2.sequenceReject = undefined;\n dispatch(PLATFORM.global, 'sequenceDone');\n resolve();\n };\n try {\n velocity.RunSequence(sequence);\n } catch (e) {\n _this2.stopSequence(sequence);\n _this2.sequenceReject(e);\n }\n });\n };\n\n VelocityAnimator.prototype.stopSequence = function stopSequence(sequence) {\n var _this3 = this;\n\n sequence.map(function (item) {\n var el = item.e || item.element || item.elements;\n _this3.stop(el, true);\n });\n if (this.sequenceReject) {\n this.sequenceReject();\n this.sequenceReject = undefined;\n }\n dispatch(PLATFORM.global, 'sequenceDone');\n return this;\n };\n\n VelocityAnimator.prototype.resolveEffectAlias = function resolveEffectAlias(alias) {\n if (typeof alias === 'string' && alias[0] === ':') {\n return this.effects[alias];\n }\n return alias;\n };\n\n VelocityAnimator.prototype.enter = function enter(element, effectName, options) {\n return this.stop(element, true)._runElementAnimation(element, effectName || ':enter', options, 'enter');\n };\n\n VelocityAnimator.prototype.leave = function leave(element, effectName, options) {\n return this.stop(element, true)._runElementAnimation(element, effectName || ':leave', options, 'leave');\n };\n\n VelocityAnimator.prototype.removeClass = function removeClass(element, className) {\n if (className === aureliaHideClassName && element.getAttribute('anim-show')) {\n element.classList.remove(className);\n return this.stop(element, true)._runElementAnimation(element, ':show', undefined, 'show');\n }\n\n element.classList.remove(className);\n return Promise.resolve(false);\n };\n\n VelocityAnimator.prototype.addClass = function addClass(element, className) {\n if (className === aureliaHideClassName && element.getAttribute('anim-hide')) {\n return this.stop(element, true)._runElementAnimation(element, ':hide', undefined, 'hide').then(function () {\n element.classList.add(className);\n });\n }\n\n element.classList.add(className);\n return Promise.resolve(false);\n };\n\n VelocityAnimator.prototype._runElements = function _runElements(element, name) {\n var options = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n\n if (!element) return Promise.reject(new Error('invalid first argument'));\n\n if (typeof element === 'string') element = this.container.querySelectorAll(element);\n\n if (!element || element.length === 0) return Promise.resolve(element);\n\n for (var i = 0; i < element.length; i++) {\n this._runElementAnimation(element[i], name, options);\n }\n\n return Promise.resolve(element);\n };\n\n VelocityAnimator.prototype._runElementAnimation = function _runElementAnimation(element, name) {\n var _this4 = this,\n _arguments = arguments;\n\n var options = arguments.length <= 2 || arguments[2] === undefined ? {} : arguments[2];\n var eventName = arguments.length <= 3 || arguments[3] === undefined ? undefined : arguments[3];\n\n if (!element) return Promise.reject(new Error('invalid first argument'));\n\n if (typeof element === 'string') element = this.container.querySelectorAll(element);\n\n if (!element || element.length === 0) return Promise.resolve(element);\n\n if (!element.animations) this._parseAttributes(element);\n\n if (eventName) dispatch(element, eventName + 'Begin');\n\n var overrides = {\n complete: function complete(elements) {\n _this4.isAnimating = false;\n if (eventName) dispatch(element, eventName + 'Done');\n if (options && options.complete) options.complete.apply(_this4, _arguments);\n }\n };\n\n var attrOpts = {};\n switch (name) {\n case ':enter':\n var enter = element.animations.enter;\n name = enter.properties;\n attrOpts = enter.options;\n break;\n\n case ':leave':\n var leave = element.animations.leave;\n name = leave.properties;\n attrOpts = leave.options;\n break;\n\n case ':show':\n var show = element.animations.show;\n name = show.properties;\n attrOpts = show.options;\n break;\n\n case ':hide':\n var hide = element.animations.hide;\n name = hide.properties;\n attrOpts = hide.options;\n break;\n\n default:\n if (!this.effects[this.resolveEffectAlias(name)]) throw new Error(name + ' animation is not supported.');\n }\n\n var opts = Object.assign({}, this.options, attrOpts, options, overrides);\n return this.animate(element, name, opts, true);\n };\n\n VelocityAnimator.prototype._parseAttributes = function _parseAttributes(element) {\n var el = void 0;\n var i = void 0;\n var l = void 0;\n element = this._ensureList(element);\n for (i = 0, l = element.length; i < l; i++) {\n el = element[i];\n el.animations = {};\n el.animations.enter = this._parseAttributeValue(el.getAttribute('anim-enter')) || this.enterAnimation;\n el.animations.leave = this._parseAttributeValue(el.getAttribute('anim-leave')) || this.leaveAnimation;\n el.animations.show = this._parseAttributeValue(el.getAttribute('anim-show')) || undefined;\n el.animations.hide = this._parseAttributeValue(el.getAttribute('anim-hide')) || undefined;\n }\n };\n\n VelocityAnimator.prototype._parseAttributeValue = function _parseAttributeValue(value) {\n if (!value) {\n return value;\n }\n\n var p = value.split(';');\n var properties = p[0].trim();\n var options = {};\n\n if (properties[0] === '{' && properties[properties.length - 1] === '}') {\n properties = parseJSObject(properties);\n }\n\n if (p.length > 1) {\n options = parseJSObject(p[1].trim());\n }\n\n return { properties: properties, options: options };\n };\n\n VelocityAnimator.prototype._ensureList = function _ensureList(element) {\n if (!Array.isArray(element) && !(element instanceof NodeList)) element = [element];\n return element;\n };\n\n return VelocityAnimator;\n}();\n\nfunction dispatch(element, name) {\n var evt = DOM.createCustomEvent(animationEvent[name], { bubbles: true, cancelable: true, detail: element });\n DOM.dispatchEvent(evt);\n}\n\nfunction parseJSObject(text) {\n if (typeof text !== 'string' || !text) {\n return null;\n }\n\n text = text.replace('{', '').replace('}', '');\n var pairs = text.split(/[,]+(?![^\\[]+\\])/);\n var obj = {};\n\n for (var i = 0; i < pairs.length; ++i) {\n var keyAndValue = pairs[i].split(':');\n var value = keyAndValue[1].trim();\n\n if (value[0] === '[' && value[value.length - 1] === ']' && value.indexOf(',') > -1) value = value.replace('[', '').replace(']', '').split(',');\n\n obj[keyAndValue[0].trim()] = value;\n }\n\n return obj;\n}\n\nexport function configure(config, callback) {\n var animator = config.container.get(VelocityAnimator);\n config.container.get(TemplatingEngine).configureAnimator(animator);\n if (typeof callback === 'function') {\n callback(animator);\n }\n}"],"names":[],"sourceRoot":""}