@angular/platform-browser 5.2.2 → 5.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v5.2.2
2
+ * @license Angular v5.2.6
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v5.2.2
2
+ * @license Angular v5.2.6
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -247,6 +247,7 @@ var AnimationRendererFactory = /** @class */ (function () {
247
247
  this._animationCallbacksBuffer = [];
248
248
  this._rendererCache = new Map();
249
249
  this._cdRecurDepth = 0;
250
+ this.promise = Promise.resolve(0);
250
251
  engine.onRemovalComplete = function (element, delegate) {
251
252
  // Note: if an component element has a leave animation, and the component
252
253
  // a host leave animation, the view engine will call `removeChild` for the parent
@@ -312,7 +313,8 @@ var AnimationRendererFactory = /** @class */ (function () {
312
313
  */
313
314
  function () {
314
315
  var _this = this;
315
- Zone.current.scheduleMicroTask('incremenet the animation microtask', function () { return _this._microtaskId++; });
316
+ // always use promise to schedule microtask instead of use Zone
317
+ this.promise.then(function () { _this._microtaskId++; });
316
318
  };
317
319
  /* @internal */
318
320
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"animations.js","sources":["../../../packages/platform-browser/esm5/animations/src/animation_builder.js","../../../packages/platform-browser/esm5/animations/src/animation_renderer.js","../../../packages/platform-browser/esm5/animations/src/providers.js","../../../packages/platform-browser/esm5/animations/src/module.js","../../../packages/platform-browser/esm5/animations/src/private_export.js","../../../packages/platform-browser/esm5/animations/src/animations.js","../../../packages/platform-browser/esm5/animations/public_api.js","../../../packages/platform-browser/esm5/animations/animations.js"],"sourcesContent":["/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport * as tslib_1 from \"tslib\";\nimport { AnimationBuilder, AnimationFactory, sequence } from '@angular/animations';\nimport { Inject, Injectable, RendererFactory2, ViewEncapsulation } from '@angular/core';\nimport { DOCUMENT } from '@angular/platform-browser';\nvar BrowserAnimationBuilder = /** @class */ (function (_super) {\n tslib_1.__extends(BrowserAnimationBuilder, _super);\n function BrowserAnimationBuilder(rootRenderer, doc) {\n var _this = _super.call(this) || this;\n _this._nextAnimationId = 0;\n var /** @type {?} */ typeData = /** @type {?} */ ({\n id: '0',\n encapsulation: ViewEncapsulation.None,\n styles: [],\n data: { animation: [] }\n });\n _this._renderer = /** @type {?} */ (rootRenderer.createRenderer(doc.body, typeData));\n return _this;\n }\n /**\n * @param {?} animation\n * @return {?}\n */\n BrowserAnimationBuilder.prototype.build = /**\n * @param {?} animation\n * @return {?}\n */\n function (animation) {\n var /** @type {?} */ id = this._nextAnimationId.toString();\n this._nextAnimationId++;\n var /** @type {?} */ entry = Array.isArray(animation) ? sequence(animation) : animation;\n issueAnimationCommand(this._renderer, null, id, 'register', [entry]);\n return new BrowserAnimationFactory(id, this._renderer);\n };\n BrowserAnimationBuilder.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n BrowserAnimationBuilder.ctorParameters = function () { return [\n { type: RendererFactory2, },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] },] },\n ]; };\n return BrowserAnimationBuilder;\n}(AnimationBuilder));\nexport { BrowserAnimationBuilder };\nfunction BrowserAnimationBuilder_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n BrowserAnimationBuilder.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n BrowserAnimationBuilder.ctorParameters;\n /** @type {?} */\n BrowserAnimationBuilder.prototype._nextAnimationId;\n /** @type {?} */\n BrowserAnimationBuilder.prototype._renderer;\n}\nvar BrowserAnimationFactory = /** @class */ (function (_super) {\n tslib_1.__extends(BrowserAnimationFactory, _super);\n function BrowserAnimationFactory(_id, _renderer) {\n var _this = _super.call(this) || this;\n _this._id = _id;\n _this._renderer = _renderer;\n return _this;\n }\n /**\n * @param {?} element\n * @param {?=} options\n * @return {?}\n */\n BrowserAnimationFactory.prototype.create = /**\n * @param {?} element\n * @param {?=} options\n * @return {?}\n */\n function (element, options) {\n return new RendererAnimationPlayer(this._id, element, options || {}, this._renderer);\n };\n return BrowserAnimationFactory;\n}(AnimationFactory));\nexport { BrowserAnimationFactory };\nfunction BrowserAnimationFactory_tsickle_Closure_declarations() {\n /** @type {?} */\n BrowserAnimationFactory.prototype._id;\n /** @type {?} */\n BrowserAnimationFactory.prototype._renderer;\n}\nvar RendererAnimationPlayer = /** @class */ (function () {\n function RendererAnimationPlayer(id, element, options, _renderer) {\n this.id = id;\n this.element = element;\n this._renderer = _renderer;\n this.parentPlayer = null;\n this._started = false;\n this.totalTime = 0;\n this._command('create', options);\n }\n /**\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n RendererAnimationPlayer.prototype._listen = /**\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (eventName, callback) {\n return this._renderer.listen(this.element, \"@@\" + this.id + \":\" + eventName, callback);\n };\n /**\n * @param {?} command\n * @param {...?} args\n * @return {?}\n */\n RendererAnimationPlayer.prototype._command = /**\n * @param {?} command\n * @param {...?} args\n * @return {?}\n */\n function (command) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n return issueAnimationCommand(this._renderer, this.element, this.id, command, args);\n };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onDone = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('done', fn); };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onStart = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('start', fn); };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onDestroy = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('destroy', fn); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.init = /**\n * @return {?}\n */\n function () { this._command('init'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.hasStarted = /**\n * @return {?}\n */\n function () { return this._started; };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.play = /**\n * @return {?}\n */\n function () {\n this._command('play');\n this._started = true;\n };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.pause = /**\n * @return {?}\n */\n function () { this._command('pause'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.restart = /**\n * @return {?}\n */\n function () { this._command('restart'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.finish = /**\n * @return {?}\n */\n function () { this._command('finish'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.destroy = /**\n * @return {?}\n */\n function () { this._command('destroy'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.reset = /**\n * @return {?}\n */\n function () { this._command('reset'); };\n /**\n * @param {?} p\n * @return {?}\n */\n RendererAnimationPlayer.prototype.setPosition = /**\n * @param {?} p\n * @return {?}\n */\n function (p) { this._command('setPosition', p); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.getPosition = /**\n * @return {?}\n */\n function () { return 0; };\n return RendererAnimationPlayer;\n}());\nexport { RendererAnimationPlayer };\nfunction RendererAnimationPlayer_tsickle_Closure_declarations() {\n /** @type {?} */\n RendererAnimationPlayer.prototype.parentPlayer;\n /** @type {?} */\n RendererAnimationPlayer.prototype._started;\n /** @type {?} */\n RendererAnimationPlayer.prototype.totalTime;\n /** @type {?} */\n RendererAnimationPlayer.prototype.id;\n /** @type {?} */\n RendererAnimationPlayer.prototype.element;\n /** @type {?} */\n RendererAnimationPlayer.prototype._renderer;\n}\n/**\n * @param {?} renderer\n * @param {?} element\n * @param {?} id\n * @param {?} command\n * @param {?} args\n * @return {?}\n */\nfunction issueAnimationCommand(renderer, element, id, command, args) {\n return renderer.setProperty(element, \"@@\" + id + \":\" + command, args);\n}\n//# sourceMappingURL=animation_builder.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport * as tslib_1 from \"tslib\";\nimport { ɵAnimationEngine as AnimationEngine } from '@angular/animations/browser';\nimport { Injectable, NgZone, RendererFactory2 } from '@angular/core';\nvar /** @type {?} */ ANIMATION_PREFIX = '@';\nvar /** @type {?} */ DISABLE_ANIMATIONS_FLAG = '@.disabled';\nvar AnimationRendererFactory = /** @class */ (function () {\n function AnimationRendererFactory(delegate, engine, _zone) {\n this.delegate = delegate;\n this.engine = engine;\n this._zone = _zone;\n this._currentId = 0;\n this._microtaskId = 1;\n this._animationCallbacksBuffer = [];\n this._rendererCache = new Map();\n this._cdRecurDepth = 0;\n engine.onRemovalComplete = function (element, delegate) {\n // Note: if an component element has a leave animation, and the component\n // a host leave animation, the view engine will call `removeChild` for the parent\n // component renderer as well as for the child component renderer.\n // Therefore, we need to check if we already removed the element.\n if (delegate && delegate.parentNode(element)) {\n delegate.removeChild(element.parentNode, element);\n }\n };\n }\n /**\n * @param {?} hostElement\n * @param {?} type\n * @return {?}\n */\n AnimationRendererFactory.prototype.createRenderer = /**\n * @param {?} hostElement\n * @param {?} type\n * @return {?}\n */\n function (hostElement, type) {\n var _this = this;\n var /** @type {?} */ EMPTY_NAMESPACE_ID = '';\n // cache the delegates to find out which cached delegate can\n // be used by which cached renderer\n var /** @type {?} */ delegate = this.delegate.createRenderer(hostElement, type);\n if (!hostElement || !type || !type.data || !type.data['animation']) {\n var /** @type {?} */ renderer = this._rendererCache.get(delegate);\n if (!renderer) {\n renderer = new BaseAnimationRenderer(EMPTY_NAMESPACE_ID, delegate, this.engine);\n // only cache this result when the base renderer is used\n this._rendererCache.set(delegate, renderer);\n }\n return renderer;\n }\n var /** @type {?} */ componentId = type.id;\n var /** @type {?} */ namespaceId = type.id + '-' + this._currentId;\n this._currentId++;\n this.engine.register(namespaceId, hostElement);\n var /** @type {?} */ animationTriggers = /** @type {?} */ (type.data['animation']);\n animationTriggers.forEach(function (trigger) {\n return _this.engine.registerTrigger(componentId, namespaceId, hostElement, trigger.name, trigger);\n });\n return new AnimationRenderer(this, namespaceId, delegate, this.engine);\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.begin = /**\n * @return {?}\n */\n function () {\n this._cdRecurDepth++;\n if (this.delegate.begin) {\n this.delegate.begin();\n }\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype._scheduleCountTask = /**\n * @return {?}\n */\n function () {\n var _this = this;\n Zone.current.scheduleMicroTask('incremenet the animation microtask', function () { return _this._microtaskId++; });\n };\n /* @internal */\n /**\n * @param {?} count\n * @param {?} fn\n * @param {?} data\n * @return {?}\n */\n AnimationRendererFactory.prototype.scheduleListenerCallback = /**\n * @param {?} count\n * @param {?} fn\n * @param {?} data\n * @return {?}\n */\n function (count, fn, data) {\n var _this = this;\n if (count >= 0 && count < this._microtaskId) {\n this._zone.run(function () { return fn(data); });\n return;\n }\n if (this._animationCallbacksBuffer.length == 0) {\n Promise.resolve(null).then(function () {\n _this._zone.run(function () {\n _this._animationCallbacksBuffer.forEach(function (tuple) {\n var fn = tuple[0], data = tuple[1];\n fn(data);\n });\n _this._animationCallbacksBuffer = [];\n });\n });\n }\n this._animationCallbacksBuffer.push([fn, data]);\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.end = /**\n * @return {?}\n */\n function () {\n var _this = this;\n this._cdRecurDepth--;\n // this is to prevent animations from running twice when an inner\n // component does CD when a parent component insted has inserted it\n if (this._cdRecurDepth == 0) {\n this._zone.runOutsideAngular(function () {\n _this._scheduleCountTask();\n _this.engine.flush(_this._microtaskId);\n });\n }\n if (this.delegate.end) {\n this.delegate.end();\n }\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.whenRenderingDone = /**\n * @return {?}\n */\n function () { return this.engine.whenRenderingDone(); };\n AnimationRendererFactory.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n AnimationRendererFactory.ctorParameters = function () { return [\n { type: RendererFactory2, },\n { type: AnimationEngine, },\n { type: NgZone, },\n ]; };\n return AnimationRendererFactory;\n}());\nexport { AnimationRendererFactory };\nfunction AnimationRendererFactory_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n AnimationRendererFactory.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n AnimationRendererFactory.ctorParameters;\n /** @type {?} */\n AnimationRendererFactory.prototype._currentId;\n /** @type {?} */\n AnimationRendererFactory.prototype._microtaskId;\n /** @type {?} */\n AnimationRendererFactory.prototype._animationCallbacksBuffer;\n /** @type {?} */\n AnimationRendererFactory.prototype._rendererCache;\n /** @type {?} */\n AnimationRendererFactory.prototype._cdRecurDepth;\n /** @type {?} */\n AnimationRendererFactory.prototype.delegate;\n /** @type {?} */\n AnimationRendererFactory.prototype.engine;\n /** @type {?} */\n AnimationRendererFactory.prototype._zone;\n}\nvar BaseAnimationRenderer = /** @class */ (function () {\n function BaseAnimationRenderer(namespaceId, delegate, engine) {\n this.namespaceId = namespaceId;\n this.delegate = delegate;\n this.engine = engine;\n this.destroyNode = this.delegate.destroyNode ? function (n) { return ((delegate.destroyNode))(n); } : null;\n }\n Object.defineProperty(BaseAnimationRenderer.prototype, \"data\", {\n get: /**\n * @return {?}\n */\n function () { return this.delegate.data; },\n enumerable: true,\n configurable: true\n });\n /**\n * @return {?}\n */\n BaseAnimationRenderer.prototype.destroy = /**\n * @return {?}\n */\n function () {\n this.engine.destroy(this.namespaceId, this.delegate);\n this.delegate.destroy();\n };\n /**\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createElement = /**\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n function (name, namespace) {\n return this.delegate.createElement(name, namespace);\n };\n /**\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createComment = /**\n * @param {?} value\n * @return {?}\n */\n function (value) { return this.delegate.createComment(value); };\n /**\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createText = /**\n * @param {?} value\n * @return {?}\n */\n function (value) { return this.delegate.createText(value); };\n /**\n * @param {?} parent\n * @param {?} newChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.appendChild = /**\n * @param {?} parent\n * @param {?} newChild\n * @return {?}\n */\n function (parent, newChild) {\n this.delegate.appendChild(parent, newChild);\n this.engine.onInsert(this.namespaceId, newChild, parent, false);\n };\n /**\n * @param {?} parent\n * @param {?} newChild\n * @param {?} refChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.insertBefore = /**\n * @param {?} parent\n * @param {?} newChild\n * @param {?} refChild\n * @return {?}\n */\n function (parent, newChild, refChild) {\n this.delegate.insertBefore(parent, newChild, refChild);\n this.engine.onInsert(this.namespaceId, newChild, parent, true);\n };\n /**\n * @param {?} parent\n * @param {?} oldChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeChild = /**\n * @param {?} parent\n * @param {?} oldChild\n * @return {?}\n */\n function (parent, oldChild) {\n this.engine.onRemove(this.namespaceId, oldChild, this.delegate);\n };\n /**\n * @param {?} selectorOrNode\n * @return {?}\n */\n BaseAnimationRenderer.prototype.selectRootElement = /**\n * @param {?} selectorOrNode\n * @return {?}\n */\n function (selectorOrNode) { return this.delegate.selectRootElement(selectorOrNode); };\n /**\n * @param {?} node\n * @return {?}\n */\n BaseAnimationRenderer.prototype.parentNode = /**\n * @param {?} node\n * @return {?}\n */\n function (node) { return this.delegate.parentNode(node); };\n /**\n * @param {?} node\n * @return {?}\n */\n BaseAnimationRenderer.prototype.nextSibling = /**\n * @param {?} node\n * @return {?}\n */\n function (node) { return this.delegate.nextSibling(node); };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setAttribute = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @param {?=} namespace\n * @return {?}\n */\n function (el, name, value, namespace) {\n this.delegate.setAttribute(el, name, value, namespace);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeAttribute = /**\n * @param {?} el\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n function (el, name, namespace) {\n this.delegate.removeAttribute(el, name, namespace);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n BaseAnimationRenderer.prototype.addClass = /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n function (el, name) { this.delegate.addClass(el, name); };\n /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeClass = /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n function (el, name) { this.delegate.removeClass(el, name); };\n /**\n * @param {?} el\n * @param {?} style\n * @param {?} value\n * @param {?=} flags\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setStyle = /**\n * @param {?} el\n * @param {?} style\n * @param {?} value\n * @param {?=} flags\n * @return {?}\n */\n function (el, style, value, flags) {\n this.delegate.setStyle(el, style, value, flags);\n };\n /**\n * @param {?} el\n * @param {?} style\n * @param {?=} flags\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeStyle = /**\n * @param {?} el\n * @param {?} style\n * @param {?=} flags\n * @return {?}\n */\n function (el, style, flags) {\n this.delegate.removeStyle(el, style, flags);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setProperty = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n function (el, name, value) {\n if (name.charAt(0) == ANIMATION_PREFIX && name == DISABLE_ANIMATIONS_FLAG) {\n this.disableAnimations(el, !!value);\n }\n else {\n this.delegate.setProperty(el, name, value);\n }\n };\n /**\n * @param {?} node\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setValue = /**\n * @param {?} node\n * @param {?} value\n * @return {?}\n */\n function (node, value) { this.delegate.setValue(node, value); };\n /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n BaseAnimationRenderer.prototype.listen = /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (target, eventName, callback) {\n return this.delegate.listen(target, eventName, callback);\n };\n /**\n * @param {?} element\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.disableAnimations = /**\n * @param {?} element\n * @param {?} value\n * @return {?}\n */\n function (element, value) {\n this.engine.disableAnimations(element, value);\n };\n return BaseAnimationRenderer;\n}());\nexport { BaseAnimationRenderer };\nfunction BaseAnimationRenderer_tsickle_Closure_declarations() {\n /** @type {?} */\n BaseAnimationRenderer.prototype.destroyNode;\n /** @type {?} */\n BaseAnimationRenderer.prototype.namespaceId;\n /** @type {?} */\n BaseAnimationRenderer.prototype.delegate;\n /** @type {?} */\n BaseAnimationRenderer.prototype.engine;\n}\nvar AnimationRenderer = /** @class */ (function (_super) {\n tslib_1.__extends(AnimationRenderer, _super);\n function AnimationRenderer(factory, namespaceId, delegate, engine) {\n var _this = _super.call(this, namespaceId, delegate, engine) || this;\n _this.factory = factory;\n _this.namespaceId = namespaceId;\n return _this;\n }\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n AnimationRenderer.prototype.setProperty = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n function (el, name, value) {\n if (name.charAt(0) == ANIMATION_PREFIX) {\n if (name.charAt(1) == '.' && name == DISABLE_ANIMATIONS_FLAG) {\n value = value === undefined ? true : !!value;\n this.disableAnimations(el, /** @type {?} */ (value));\n }\n else {\n this.engine.process(this.namespaceId, el, name.substr(1), value);\n }\n }\n else {\n this.delegate.setProperty(el, name, value);\n }\n };\n /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n AnimationRenderer.prototype.listen = /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (target, eventName, callback) {\n var _this = this;\n if (eventName.charAt(0) == ANIMATION_PREFIX) {\n var /** @type {?} */ element = resolveElementFromTarget(target);\n var /** @type {?} */ name_1 = eventName.substr(1);\n var /** @type {?} */ phase = '';\n // @listener.phase is for trigger animation callbacks\n // @@listener is for animation builder callbacks\n if (name_1.charAt(0) != ANIMATION_PREFIX) {\n _a = parseTriggerCallbackName(name_1), name_1 = _a[0], phase = _a[1];\n }\n return this.engine.listen(this.namespaceId, element, name_1, phase, function (event) {\n var /** @type {?} */ countId = (/** @type {?} */ (event))['_data'] || -1;\n _this.factory.scheduleListenerCallback(countId, callback, event);\n });\n }\n return this.delegate.listen(target, eventName, callback);\n var _a;\n };\n return AnimationRenderer;\n}(BaseAnimationRenderer));\nexport { AnimationRenderer };\nfunction AnimationRenderer_tsickle_Closure_declarations() {\n /** @type {?} */\n AnimationRenderer.prototype.factory;\n}\n/**\n * @param {?} target\n * @return {?}\n */\nfunction resolveElementFromTarget(target) {\n switch (target) {\n case 'body':\n return document.body;\n case 'document':\n return document;\n case 'window':\n return window;\n default:\n return target;\n }\n}\n/**\n * @param {?} triggerName\n * @return {?}\n */\nfunction parseTriggerCallbackName(triggerName) {\n var /** @type {?} */ dotIndex = triggerName.indexOf('.');\n var /** @type {?} */ trigger = triggerName.substring(0, dotIndex);\n var /** @type {?} */ phase = triggerName.substr(dotIndex + 1);\n return [trigger, phase];\n}\n//# sourceMappingURL=animation_renderer.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport * as tslib_1 from \"tslib\";\nimport { AnimationBuilder } from '@angular/animations';\nimport { AnimationDriver, ɵAnimationEngine as AnimationEngine, ɵAnimationStyleNormalizer as AnimationStyleNormalizer, ɵNoopAnimationDriver as NoopAnimationDriver, ɵWebAnimationsDriver as WebAnimationsDriver, ɵWebAnimationsStyleNormalizer as WebAnimationsStyleNormalizer, ɵsupportsWebAnimations as supportsWebAnimations } from '@angular/animations/browser';\nimport { Injectable, NgZone, RendererFactory2 } from '@angular/core';\nimport { ɵDomRendererFactory2 as DomRendererFactory2 } from '@angular/platform-browser';\nimport { BrowserAnimationBuilder } from './animation_builder';\nimport { AnimationRendererFactory } from './animation_renderer';\nvar InjectableAnimationEngine = /** @class */ (function (_super) {\n tslib_1.__extends(InjectableAnimationEngine, _super);\n function InjectableAnimationEngine(driver, normalizer) {\n return _super.call(this, driver, normalizer) || this;\n }\n InjectableAnimationEngine.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n InjectableAnimationEngine.ctorParameters = function () { return [\n { type: AnimationDriver, },\n { type: AnimationStyleNormalizer, },\n ]; };\n return InjectableAnimationEngine;\n}(AnimationEngine));\nexport { InjectableAnimationEngine };\nfunction InjectableAnimationEngine_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n InjectableAnimationEngine.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n InjectableAnimationEngine.ctorParameters;\n}\n/**\n * @return {?}\n */\nexport function instantiateSupportedAnimationDriver() {\n if (supportsWebAnimations()) {\n return new WebAnimationsDriver();\n }\n return new NoopAnimationDriver();\n}\n/**\n * @return {?}\n */\nexport function instantiateDefaultStyleNormalizer() {\n return new WebAnimationsStyleNormalizer();\n}\n/**\n * @param {?} renderer\n * @param {?} engine\n * @param {?} zone\n * @return {?}\n */\nexport function instantiateRendererFactory(renderer, engine, zone) {\n return new AnimationRendererFactory(renderer, engine, zone);\n}\nvar /** @type {?} */ SHARED_ANIMATION_PROVIDERS = [\n { provide: AnimationBuilder, useClass: BrowserAnimationBuilder },\n { provide: AnimationStyleNormalizer, useFactory: instantiateDefaultStyleNormalizer },\n { provide: AnimationEngine, useClass: InjectableAnimationEngine }, {\n provide: RendererFactory2,\n useFactory: instantiateRendererFactory,\n deps: [DomRendererFactory2, AnimationEngine, NgZone]\n }\n];\n/**\n * Separate providers from the actual module so that we can do a local modification in Google3 to\n * include them in the BrowserModule.\n */\nexport var /** @type {?} */ BROWSER_ANIMATIONS_PROVIDERS = [\n { provide: AnimationDriver, useFactory: instantiateSupportedAnimationDriver }\n].concat(SHARED_ANIMATION_PROVIDERS);\n/**\n * Separate providers from the actual module so that we can do a local modification in Google3 to\n * include them in the BrowserTestingModule.\n */\nexport var /** @type {?} */ BROWSER_NOOP_ANIMATIONS_PROVIDERS = [{ provide: AnimationDriver, useClass: NoopAnimationDriver }].concat(SHARED_ANIMATION_PROVIDERS);\n//# sourceMappingURL=providers.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BROWSER_ANIMATIONS_PROVIDERS, BROWSER_NOOP_ANIMATIONS_PROVIDERS } from './providers';\n/**\n * \\@experimental Animation support is experimental.\n */\nvar BrowserAnimationsModule = /** @class */ (function () {\n function BrowserAnimationsModule() {\n }\n BrowserAnimationsModule.decorators = [\n { type: NgModule, args: [{\n exports: [BrowserModule],\n providers: BROWSER_ANIMATIONS_PROVIDERS,\n },] },\n ];\n /** @nocollapse */\n BrowserAnimationsModule.ctorParameters = function () { return []; };\n return BrowserAnimationsModule;\n}());\nexport { BrowserAnimationsModule };\nfunction BrowserAnimationsModule_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n BrowserAnimationsModule.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n BrowserAnimationsModule.ctorParameters;\n}\n/**\n * \\@experimental Animation support is experimental.\n */\nvar NoopAnimationsModule = /** @class */ (function () {\n function NoopAnimationsModule() {\n }\n NoopAnimationsModule.decorators = [\n { type: NgModule, args: [{\n exports: [BrowserModule],\n providers: BROWSER_NOOP_ANIMATIONS_PROVIDERS,\n },] },\n ];\n /** @nocollapse */\n NoopAnimationsModule.ctorParameters = function () { return []; };\n return NoopAnimationsModule;\n}());\nexport { NoopAnimationsModule };\nfunction NoopAnimationsModule_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n NoopAnimationsModule.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n NoopAnimationsModule.ctorParameters;\n}\n//# sourceMappingURL=module.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nexport { BrowserAnimationBuilder as ɵBrowserAnimationBuilder, BrowserAnimationFactory as ɵBrowserAnimationFactory } from './animation_builder';\nexport { AnimationRenderer as ɵAnimationRenderer, AnimationRendererFactory as ɵAnimationRendererFactory } from './animation_renderer';\n//# sourceMappingURL=private_export.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule } from './module';\nexport { ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './private_export';\n//# sourceMappingURL=animations.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule, ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './src/animations';\n//# sourceMappingURL=public_api.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * Generated bundle index. Do not edit.\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule, ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './public_api';\nexport { BaseAnimationRenderer as ɵa } from './src/animation_renderer';\nexport { BROWSER_ANIMATIONS_PROVIDERS as ɵf, BROWSER_NOOP_ANIMATIONS_PROVIDERS as ɵg, InjectableAnimationEngine as ɵb, instantiateDefaultStyleNormalizer as ɵd, instantiateRendererFactory as ɵe, instantiateSupportedAnimationDriver as ɵc } from './src/providers';\n//# sourceMappingURL=animations.js.map"],"names":["tslib_1.__extends","AnimationEngine","AnimationStyleNormalizer","supportsWebAnimations","WebAnimationsDriver","NoopAnimationDriver","WebAnimationsStyleNormalizer","DomRendererFactory2"],"mappings":"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"}
1
+ {"version":3,"file":"animations.js","sources":["../../../packages/platform-browser/esm5/animations/src/animation_builder.js","../../../packages/platform-browser/esm5/animations/src/animation_renderer.js","../../../packages/platform-browser/esm5/animations/src/providers.js","../../../packages/platform-browser/esm5/animations/src/module.js","../../../packages/platform-browser/esm5/animations/src/private_export.js","../../../packages/platform-browser/esm5/animations/src/animations.js","../../../packages/platform-browser/esm5/animations/public_api.js","../../../packages/platform-browser/esm5/animations/animations.js"],"sourcesContent":["/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport * as tslib_1 from \"tslib\";\nimport { AnimationBuilder, AnimationFactory, sequence } from '@angular/animations';\nimport { Inject, Injectable, RendererFactory2, ViewEncapsulation } from '@angular/core';\nimport { DOCUMENT } from '@angular/platform-browser';\nvar BrowserAnimationBuilder = /** @class */ (function (_super) {\n tslib_1.__extends(BrowserAnimationBuilder, _super);\n function BrowserAnimationBuilder(rootRenderer, doc) {\n var _this = _super.call(this) || this;\n _this._nextAnimationId = 0;\n var /** @type {?} */ typeData = /** @type {?} */ ({\n id: '0',\n encapsulation: ViewEncapsulation.None,\n styles: [],\n data: { animation: [] }\n });\n _this._renderer = /** @type {?} */ (rootRenderer.createRenderer(doc.body, typeData));\n return _this;\n }\n /**\n * @param {?} animation\n * @return {?}\n */\n BrowserAnimationBuilder.prototype.build = /**\n * @param {?} animation\n * @return {?}\n */\n function (animation) {\n var /** @type {?} */ id = this._nextAnimationId.toString();\n this._nextAnimationId++;\n var /** @type {?} */ entry = Array.isArray(animation) ? sequence(animation) : animation;\n issueAnimationCommand(this._renderer, null, id, 'register', [entry]);\n return new BrowserAnimationFactory(id, this._renderer);\n };\n BrowserAnimationBuilder.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n BrowserAnimationBuilder.ctorParameters = function () { return [\n { type: RendererFactory2, },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] },] },\n ]; };\n return BrowserAnimationBuilder;\n}(AnimationBuilder));\nexport { BrowserAnimationBuilder };\nfunction BrowserAnimationBuilder_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n BrowserAnimationBuilder.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n BrowserAnimationBuilder.ctorParameters;\n /** @type {?} */\n BrowserAnimationBuilder.prototype._nextAnimationId;\n /** @type {?} */\n BrowserAnimationBuilder.prototype._renderer;\n}\nvar BrowserAnimationFactory = /** @class */ (function (_super) {\n tslib_1.__extends(BrowserAnimationFactory, _super);\n function BrowserAnimationFactory(_id, _renderer) {\n var _this = _super.call(this) || this;\n _this._id = _id;\n _this._renderer = _renderer;\n return _this;\n }\n /**\n * @param {?} element\n * @param {?=} options\n * @return {?}\n */\n BrowserAnimationFactory.prototype.create = /**\n * @param {?} element\n * @param {?=} options\n * @return {?}\n */\n function (element, options) {\n return new RendererAnimationPlayer(this._id, element, options || {}, this._renderer);\n };\n return BrowserAnimationFactory;\n}(AnimationFactory));\nexport { BrowserAnimationFactory };\nfunction BrowserAnimationFactory_tsickle_Closure_declarations() {\n /** @type {?} */\n BrowserAnimationFactory.prototype._id;\n /** @type {?} */\n BrowserAnimationFactory.prototype._renderer;\n}\nvar RendererAnimationPlayer = /** @class */ (function () {\n function RendererAnimationPlayer(id, element, options, _renderer) {\n this.id = id;\n this.element = element;\n this._renderer = _renderer;\n this.parentPlayer = null;\n this._started = false;\n this.totalTime = 0;\n this._command('create', options);\n }\n /**\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n RendererAnimationPlayer.prototype._listen = /**\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (eventName, callback) {\n return this._renderer.listen(this.element, \"@@\" + this.id + \":\" + eventName, callback);\n };\n /**\n * @param {?} command\n * @param {...?} args\n * @return {?}\n */\n RendererAnimationPlayer.prototype._command = /**\n * @param {?} command\n * @param {...?} args\n * @return {?}\n */\n function (command) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n return issueAnimationCommand(this._renderer, this.element, this.id, command, args);\n };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onDone = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('done', fn); };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onStart = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('start', fn); };\n /**\n * @param {?} fn\n * @return {?}\n */\n RendererAnimationPlayer.prototype.onDestroy = /**\n * @param {?} fn\n * @return {?}\n */\n function (fn) { this._listen('destroy', fn); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.init = /**\n * @return {?}\n */\n function () { this._command('init'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.hasStarted = /**\n * @return {?}\n */\n function () { return this._started; };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.play = /**\n * @return {?}\n */\n function () {\n this._command('play');\n this._started = true;\n };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.pause = /**\n * @return {?}\n */\n function () { this._command('pause'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.restart = /**\n * @return {?}\n */\n function () { this._command('restart'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.finish = /**\n * @return {?}\n */\n function () { this._command('finish'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.destroy = /**\n * @return {?}\n */\n function () { this._command('destroy'); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.reset = /**\n * @return {?}\n */\n function () { this._command('reset'); };\n /**\n * @param {?} p\n * @return {?}\n */\n RendererAnimationPlayer.prototype.setPosition = /**\n * @param {?} p\n * @return {?}\n */\n function (p) { this._command('setPosition', p); };\n /**\n * @return {?}\n */\n RendererAnimationPlayer.prototype.getPosition = /**\n * @return {?}\n */\n function () { return 0; };\n return RendererAnimationPlayer;\n}());\nexport { RendererAnimationPlayer };\nfunction RendererAnimationPlayer_tsickle_Closure_declarations() {\n /** @type {?} */\n RendererAnimationPlayer.prototype.parentPlayer;\n /** @type {?} */\n RendererAnimationPlayer.prototype._started;\n /** @type {?} */\n RendererAnimationPlayer.prototype.totalTime;\n /** @type {?} */\n RendererAnimationPlayer.prototype.id;\n /** @type {?} */\n RendererAnimationPlayer.prototype.element;\n /** @type {?} */\n RendererAnimationPlayer.prototype._renderer;\n}\n/**\n * @param {?} renderer\n * @param {?} element\n * @param {?} id\n * @param {?} command\n * @param {?} args\n * @return {?}\n */\nfunction issueAnimationCommand(renderer, element, id, command, args) {\n return renderer.setProperty(element, \"@@\" + id + \":\" + command, args);\n}\n//# sourceMappingURL=animation_builder.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport * as tslib_1 from \"tslib\";\nimport { ɵAnimationEngine as AnimationEngine } from '@angular/animations/browser';\nimport { Injectable, NgZone, RendererFactory2 } from '@angular/core';\nvar /** @type {?} */ ANIMATION_PREFIX = '@';\nvar /** @type {?} */ DISABLE_ANIMATIONS_FLAG = '@.disabled';\nvar AnimationRendererFactory = /** @class */ (function () {\n function AnimationRendererFactory(delegate, engine, _zone) {\n this.delegate = delegate;\n this.engine = engine;\n this._zone = _zone;\n this._currentId = 0;\n this._microtaskId = 1;\n this._animationCallbacksBuffer = [];\n this._rendererCache = new Map();\n this._cdRecurDepth = 0;\n this.promise = Promise.resolve(0);\n engine.onRemovalComplete = function (element, delegate) {\n // Note: if an component element has a leave animation, and the component\n // a host leave animation, the view engine will call `removeChild` for the parent\n // component renderer as well as for the child component renderer.\n // Therefore, we need to check if we already removed the element.\n if (delegate && delegate.parentNode(element)) {\n delegate.removeChild(element.parentNode, element);\n }\n };\n }\n /**\n * @param {?} hostElement\n * @param {?} type\n * @return {?}\n */\n AnimationRendererFactory.prototype.createRenderer = /**\n * @param {?} hostElement\n * @param {?} type\n * @return {?}\n */\n function (hostElement, type) {\n var _this = this;\n var /** @type {?} */ EMPTY_NAMESPACE_ID = '';\n // cache the delegates to find out which cached delegate can\n // be used by which cached renderer\n var /** @type {?} */ delegate = this.delegate.createRenderer(hostElement, type);\n if (!hostElement || !type || !type.data || !type.data['animation']) {\n var /** @type {?} */ renderer = this._rendererCache.get(delegate);\n if (!renderer) {\n renderer = new BaseAnimationRenderer(EMPTY_NAMESPACE_ID, delegate, this.engine);\n // only cache this result when the base renderer is used\n this._rendererCache.set(delegate, renderer);\n }\n return renderer;\n }\n var /** @type {?} */ componentId = type.id;\n var /** @type {?} */ namespaceId = type.id + '-' + this._currentId;\n this._currentId++;\n this.engine.register(namespaceId, hostElement);\n var /** @type {?} */ animationTriggers = /** @type {?} */ (type.data['animation']);\n animationTriggers.forEach(function (trigger) {\n return _this.engine.registerTrigger(componentId, namespaceId, hostElement, trigger.name, trigger);\n });\n return new AnimationRenderer(this, namespaceId, delegate, this.engine);\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.begin = /**\n * @return {?}\n */\n function () {\n this._cdRecurDepth++;\n if (this.delegate.begin) {\n this.delegate.begin();\n }\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype._scheduleCountTask = /**\n * @return {?}\n */\n function () {\n var _this = this;\n // always use promise to schedule microtask instead of use Zone\n this.promise.then(function () { _this._microtaskId++; });\n };\n /* @internal */\n /**\n * @param {?} count\n * @param {?} fn\n * @param {?} data\n * @return {?}\n */\n AnimationRendererFactory.prototype.scheduleListenerCallback = /**\n * @param {?} count\n * @param {?} fn\n * @param {?} data\n * @return {?}\n */\n function (count, fn, data) {\n var _this = this;\n if (count >= 0 && count < this._microtaskId) {\n this._zone.run(function () { return fn(data); });\n return;\n }\n if (this._animationCallbacksBuffer.length == 0) {\n Promise.resolve(null).then(function () {\n _this._zone.run(function () {\n _this._animationCallbacksBuffer.forEach(function (tuple) {\n var fn = tuple[0], data = tuple[1];\n fn(data);\n });\n _this._animationCallbacksBuffer = [];\n });\n });\n }\n this._animationCallbacksBuffer.push([fn, data]);\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.end = /**\n * @return {?}\n */\n function () {\n var _this = this;\n this._cdRecurDepth--;\n // this is to prevent animations from running twice when an inner\n // component does CD when a parent component insted has inserted it\n if (this._cdRecurDepth == 0) {\n this._zone.runOutsideAngular(function () {\n _this._scheduleCountTask();\n _this.engine.flush(_this._microtaskId);\n });\n }\n if (this.delegate.end) {\n this.delegate.end();\n }\n };\n /**\n * @return {?}\n */\n AnimationRendererFactory.prototype.whenRenderingDone = /**\n * @return {?}\n */\n function () { return this.engine.whenRenderingDone(); };\n AnimationRendererFactory.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n AnimationRendererFactory.ctorParameters = function () { return [\n { type: RendererFactory2, },\n { type: AnimationEngine, },\n { type: NgZone, },\n ]; };\n return AnimationRendererFactory;\n}());\nexport { AnimationRendererFactory };\nfunction AnimationRendererFactory_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n AnimationRendererFactory.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n AnimationRendererFactory.ctorParameters;\n /** @type {?} */\n AnimationRendererFactory.prototype._currentId;\n /** @type {?} */\n AnimationRendererFactory.prototype._microtaskId;\n /** @type {?} */\n AnimationRendererFactory.prototype._animationCallbacksBuffer;\n /** @type {?} */\n AnimationRendererFactory.prototype._rendererCache;\n /** @type {?} */\n AnimationRendererFactory.prototype._cdRecurDepth;\n /** @type {?} */\n AnimationRendererFactory.prototype.promise;\n /** @type {?} */\n AnimationRendererFactory.prototype.delegate;\n /** @type {?} */\n AnimationRendererFactory.prototype.engine;\n /** @type {?} */\n AnimationRendererFactory.prototype._zone;\n}\nvar BaseAnimationRenderer = /** @class */ (function () {\n function BaseAnimationRenderer(namespaceId, delegate, engine) {\n this.namespaceId = namespaceId;\n this.delegate = delegate;\n this.engine = engine;\n this.destroyNode = this.delegate.destroyNode ? function (n) { return ((delegate.destroyNode))(n); } : null;\n }\n Object.defineProperty(BaseAnimationRenderer.prototype, \"data\", {\n get: /**\n * @return {?}\n */\n function () { return this.delegate.data; },\n enumerable: true,\n configurable: true\n });\n /**\n * @return {?}\n */\n BaseAnimationRenderer.prototype.destroy = /**\n * @return {?}\n */\n function () {\n this.engine.destroy(this.namespaceId, this.delegate);\n this.delegate.destroy();\n };\n /**\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createElement = /**\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n function (name, namespace) {\n return this.delegate.createElement(name, namespace);\n };\n /**\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createComment = /**\n * @param {?} value\n * @return {?}\n */\n function (value) { return this.delegate.createComment(value); };\n /**\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.createText = /**\n * @param {?} value\n * @return {?}\n */\n function (value) { return this.delegate.createText(value); };\n /**\n * @param {?} parent\n * @param {?} newChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.appendChild = /**\n * @param {?} parent\n * @param {?} newChild\n * @return {?}\n */\n function (parent, newChild) {\n this.delegate.appendChild(parent, newChild);\n this.engine.onInsert(this.namespaceId, newChild, parent, false);\n };\n /**\n * @param {?} parent\n * @param {?} newChild\n * @param {?} refChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.insertBefore = /**\n * @param {?} parent\n * @param {?} newChild\n * @param {?} refChild\n * @return {?}\n */\n function (parent, newChild, refChild) {\n this.delegate.insertBefore(parent, newChild, refChild);\n this.engine.onInsert(this.namespaceId, newChild, parent, true);\n };\n /**\n * @param {?} parent\n * @param {?} oldChild\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeChild = /**\n * @param {?} parent\n * @param {?} oldChild\n * @return {?}\n */\n function (parent, oldChild) {\n this.engine.onRemove(this.namespaceId, oldChild, this.delegate);\n };\n /**\n * @param {?} selectorOrNode\n * @return {?}\n */\n BaseAnimationRenderer.prototype.selectRootElement = /**\n * @param {?} selectorOrNode\n * @return {?}\n */\n function (selectorOrNode) { return this.delegate.selectRootElement(selectorOrNode); };\n /**\n * @param {?} node\n * @return {?}\n */\n BaseAnimationRenderer.prototype.parentNode = /**\n * @param {?} node\n * @return {?}\n */\n function (node) { return this.delegate.parentNode(node); };\n /**\n * @param {?} node\n * @return {?}\n */\n BaseAnimationRenderer.prototype.nextSibling = /**\n * @param {?} node\n * @return {?}\n */\n function (node) { return this.delegate.nextSibling(node); };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setAttribute = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @param {?=} namespace\n * @return {?}\n */\n function (el, name, value, namespace) {\n this.delegate.setAttribute(el, name, value, namespace);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeAttribute = /**\n * @param {?} el\n * @param {?} name\n * @param {?=} namespace\n * @return {?}\n */\n function (el, name, namespace) {\n this.delegate.removeAttribute(el, name, namespace);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n BaseAnimationRenderer.prototype.addClass = /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n function (el, name) { this.delegate.addClass(el, name); };\n /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeClass = /**\n * @param {?} el\n * @param {?} name\n * @return {?}\n */\n function (el, name) { this.delegate.removeClass(el, name); };\n /**\n * @param {?} el\n * @param {?} style\n * @param {?} value\n * @param {?=} flags\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setStyle = /**\n * @param {?} el\n * @param {?} style\n * @param {?} value\n * @param {?=} flags\n * @return {?}\n */\n function (el, style, value, flags) {\n this.delegate.setStyle(el, style, value, flags);\n };\n /**\n * @param {?} el\n * @param {?} style\n * @param {?=} flags\n * @return {?}\n */\n BaseAnimationRenderer.prototype.removeStyle = /**\n * @param {?} el\n * @param {?} style\n * @param {?=} flags\n * @return {?}\n */\n function (el, style, flags) {\n this.delegate.removeStyle(el, style, flags);\n };\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setProperty = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n function (el, name, value) {\n if (name.charAt(0) == ANIMATION_PREFIX && name == DISABLE_ANIMATIONS_FLAG) {\n this.disableAnimations(el, !!value);\n }\n else {\n this.delegate.setProperty(el, name, value);\n }\n };\n /**\n * @param {?} node\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.setValue = /**\n * @param {?} node\n * @param {?} value\n * @return {?}\n */\n function (node, value) { this.delegate.setValue(node, value); };\n /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n BaseAnimationRenderer.prototype.listen = /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (target, eventName, callback) {\n return this.delegate.listen(target, eventName, callback);\n };\n /**\n * @param {?} element\n * @param {?} value\n * @return {?}\n */\n BaseAnimationRenderer.prototype.disableAnimations = /**\n * @param {?} element\n * @param {?} value\n * @return {?}\n */\n function (element, value) {\n this.engine.disableAnimations(element, value);\n };\n return BaseAnimationRenderer;\n}());\nexport { BaseAnimationRenderer };\nfunction BaseAnimationRenderer_tsickle_Closure_declarations() {\n /** @type {?} */\n BaseAnimationRenderer.prototype.destroyNode;\n /** @type {?} */\n BaseAnimationRenderer.prototype.namespaceId;\n /** @type {?} */\n BaseAnimationRenderer.prototype.delegate;\n /** @type {?} */\n BaseAnimationRenderer.prototype.engine;\n}\nvar AnimationRenderer = /** @class */ (function (_super) {\n tslib_1.__extends(AnimationRenderer, _super);\n function AnimationRenderer(factory, namespaceId, delegate, engine) {\n var _this = _super.call(this, namespaceId, delegate, engine) || this;\n _this.factory = factory;\n _this.namespaceId = namespaceId;\n return _this;\n }\n /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n AnimationRenderer.prototype.setProperty = /**\n * @param {?} el\n * @param {?} name\n * @param {?} value\n * @return {?}\n */\n function (el, name, value) {\n if (name.charAt(0) == ANIMATION_PREFIX) {\n if (name.charAt(1) == '.' && name == DISABLE_ANIMATIONS_FLAG) {\n value = value === undefined ? true : !!value;\n this.disableAnimations(el, /** @type {?} */ (value));\n }\n else {\n this.engine.process(this.namespaceId, el, name.substr(1), value);\n }\n }\n else {\n this.delegate.setProperty(el, name, value);\n }\n };\n /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n AnimationRenderer.prototype.listen = /**\n * @param {?} target\n * @param {?} eventName\n * @param {?} callback\n * @return {?}\n */\n function (target, eventName, callback) {\n var _this = this;\n if (eventName.charAt(0) == ANIMATION_PREFIX) {\n var /** @type {?} */ element = resolveElementFromTarget(target);\n var /** @type {?} */ name_1 = eventName.substr(1);\n var /** @type {?} */ phase = '';\n // @listener.phase is for trigger animation callbacks\n // @@listener is for animation builder callbacks\n if (name_1.charAt(0) != ANIMATION_PREFIX) {\n _a = parseTriggerCallbackName(name_1), name_1 = _a[0], phase = _a[1];\n }\n return this.engine.listen(this.namespaceId, element, name_1, phase, function (event) {\n var /** @type {?} */ countId = (/** @type {?} */ (event))['_data'] || -1;\n _this.factory.scheduleListenerCallback(countId, callback, event);\n });\n }\n return this.delegate.listen(target, eventName, callback);\n var _a;\n };\n return AnimationRenderer;\n}(BaseAnimationRenderer));\nexport { AnimationRenderer };\nfunction AnimationRenderer_tsickle_Closure_declarations() {\n /** @type {?} */\n AnimationRenderer.prototype.factory;\n}\n/**\n * @param {?} target\n * @return {?}\n */\nfunction resolveElementFromTarget(target) {\n switch (target) {\n case 'body':\n return document.body;\n case 'document':\n return document;\n case 'window':\n return window;\n default:\n return target;\n }\n}\n/**\n * @param {?} triggerName\n * @return {?}\n */\nfunction parseTriggerCallbackName(triggerName) {\n var /** @type {?} */ dotIndex = triggerName.indexOf('.');\n var /** @type {?} */ trigger = triggerName.substring(0, dotIndex);\n var /** @type {?} */ phase = triggerName.substr(dotIndex + 1);\n return [trigger, phase];\n}\n//# sourceMappingURL=animation_renderer.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport * as tslib_1 from \"tslib\";\nimport { AnimationBuilder } from '@angular/animations';\nimport { AnimationDriver, ɵAnimationEngine as AnimationEngine, ɵAnimationStyleNormalizer as AnimationStyleNormalizer, ɵNoopAnimationDriver as NoopAnimationDriver, ɵWebAnimationsDriver as WebAnimationsDriver, ɵWebAnimationsStyleNormalizer as WebAnimationsStyleNormalizer, ɵsupportsWebAnimations as supportsWebAnimations } from '@angular/animations/browser';\nimport { Injectable, NgZone, RendererFactory2 } from '@angular/core';\nimport { ɵDomRendererFactory2 as DomRendererFactory2 } from '@angular/platform-browser';\nimport { BrowserAnimationBuilder } from './animation_builder';\nimport { AnimationRendererFactory } from './animation_renderer';\nvar InjectableAnimationEngine = /** @class */ (function (_super) {\n tslib_1.__extends(InjectableAnimationEngine, _super);\n function InjectableAnimationEngine(driver, normalizer) {\n return _super.call(this, driver, normalizer) || this;\n }\n InjectableAnimationEngine.decorators = [\n { type: Injectable },\n ];\n /** @nocollapse */\n InjectableAnimationEngine.ctorParameters = function () { return [\n { type: AnimationDriver, },\n { type: AnimationStyleNormalizer, },\n ]; };\n return InjectableAnimationEngine;\n}(AnimationEngine));\nexport { InjectableAnimationEngine };\nfunction InjectableAnimationEngine_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n InjectableAnimationEngine.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n InjectableAnimationEngine.ctorParameters;\n}\n/**\n * @return {?}\n */\nexport function instantiateSupportedAnimationDriver() {\n if (supportsWebAnimations()) {\n return new WebAnimationsDriver();\n }\n return new NoopAnimationDriver();\n}\n/**\n * @return {?}\n */\nexport function instantiateDefaultStyleNormalizer() {\n return new WebAnimationsStyleNormalizer();\n}\n/**\n * @param {?} renderer\n * @param {?} engine\n * @param {?} zone\n * @return {?}\n */\nexport function instantiateRendererFactory(renderer, engine, zone) {\n return new AnimationRendererFactory(renderer, engine, zone);\n}\nvar /** @type {?} */ SHARED_ANIMATION_PROVIDERS = [\n { provide: AnimationBuilder, useClass: BrowserAnimationBuilder },\n { provide: AnimationStyleNormalizer, useFactory: instantiateDefaultStyleNormalizer },\n { provide: AnimationEngine, useClass: InjectableAnimationEngine }, {\n provide: RendererFactory2,\n useFactory: instantiateRendererFactory,\n deps: [DomRendererFactory2, AnimationEngine, NgZone]\n }\n];\n/**\n * Separate providers from the actual module so that we can do a local modification in Google3 to\n * include them in the BrowserModule.\n */\nexport var /** @type {?} */ BROWSER_ANIMATIONS_PROVIDERS = [\n { provide: AnimationDriver, useFactory: instantiateSupportedAnimationDriver }\n].concat(SHARED_ANIMATION_PROVIDERS);\n/**\n * Separate providers from the actual module so that we can do a local modification in Google3 to\n * include them in the BrowserTestingModule.\n */\nexport var /** @type {?} */ BROWSER_NOOP_ANIMATIONS_PROVIDERS = [{ provide: AnimationDriver, useClass: NoopAnimationDriver }].concat(SHARED_ANIMATION_PROVIDERS);\n//# sourceMappingURL=providers.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nimport { NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BROWSER_ANIMATIONS_PROVIDERS, BROWSER_NOOP_ANIMATIONS_PROVIDERS } from './providers';\n/**\n * \\@experimental Animation support is experimental.\n */\nvar BrowserAnimationsModule = /** @class */ (function () {\n function BrowserAnimationsModule() {\n }\n BrowserAnimationsModule.decorators = [\n { type: NgModule, args: [{\n exports: [BrowserModule],\n providers: BROWSER_ANIMATIONS_PROVIDERS,\n },] },\n ];\n /** @nocollapse */\n BrowserAnimationsModule.ctorParameters = function () { return []; };\n return BrowserAnimationsModule;\n}());\nexport { BrowserAnimationsModule };\nfunction BrowserAnimationsModule_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n BrowserAnimationsModule.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n BrowserAnimationsModule.ctorParameters;\n}\n/**\n * \\@experimental Animation support is experimental.\n */\nvar NoopAnimationsModule = /** @class */ (function () {\n function NoopAnimationsModule() {\n }\n NoopAnimationsModule.decorators = [\n { type: NgModule, args: [{\n exports: [BrowserModule],\n providers: BROWSER_NOOP_ANIMATIONS_PROVIDERS,\n },] },\n ];\n /** @nocollapse */\n NoopAnimationsModule.ctorParameters = function () { return []; };\n return NoopAnimationsModule;\n}());\nexport { NoopAnimationsModule };\nfunction NoopAnimationsModule_tsickle_Closure_declarations() {\n /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */\n NoopAnimationsModule.decorators;\n /**\n * @nocollapse\n * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>}\n */\n NoopAnimationsModule.ctorParameters;\n}\n//# sourceMappingURL=module.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\nexport { BrowserAnimationBuilder as ɵBrowserAnimationBuilder, BrowserAnimationFactory as ɵBrowserAnimationFactory } from './animation_builder';\nexport { AnimationRenderer as ɵAnimationRenderer, AnimationRendererFactory as ɵAnimationRendererFactory } from './animation_renderer';\n//# sourceMappingURL=private_export.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule } from './module';\nexport { ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './private_export';\n//# sourceMappingURL=animations.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule, ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './src/animations';\n//# sourceMappingURL=public_api.js.map","/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes} checked by tsc\n */\n/**\n * Generated bundle index. Do not edit.\n */\nexport { BrowserAnimationsModule, NoopAnimationsModule, ɵBrowserAnimationBuilder, ɵBrowserAnimationFactory, ɵAnimationRenderer, ɵAnimationRendererFactory } from './public_api';\nexport { BaseAnimationRenderer as ɵa } from './src/animation_renderer';\nexport { BROWSER_ANIMATIONS_PROVIDERS as ɵf, BROWSER_NOOP_ANIMATIONS_PROVIDERS as ɵg, InjectableAnimationEngine as ɵb, instantiateDefaultStyleNormalizer as ɵd, instantiateRendererFactory as ɵe, instantiateSupportedAnimationDriver as ɵc } from './src/providers';\n//# sourceMappingURL=animations.js.map"],"names":["tslib_1.__extends","AnimationEngine","AnimationStyleNormalizer","supportsWebAnimations","WebAnimationsDriver","NoopAnimationDriver","WebAnimationsStyleNormalizer","DomRendererFactory2"],"mappings":"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"}