From 29d38917825b9334a049799cdac60f0d39baf65a Mon Sep 17 00:00:00 2001 From: Christoph Guttandin Date: Tue, 18 Jun 2019 16:50:59 +0200 Subject: [PATCH] fix(animations): handle structured AnimateTimings (#31107) This commit makes sure structured AnimateTimings are not procesed any further when building the AST. Fixes: #22752 PR Close #31107 --- .../animations/browser/src/dsl/animation_ast_builder.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/animations/browser/src/dsl/animation_ast_builder.ts b/packages/animations/browser/src/dsl/animation_ast_builder.ts index c1b57dd8ab3..f076bac9f41 100644 --- a/packages/animations/browser/src/dsl/animation_ast_builder.ts +++ b/packages/animations/browser/src/dsl/animation_ast_builder.ts @@ -561,10 +561,11 @@ function consumeOffset(styles: OffsetStyles|Array): number|null { } function constructTimingAst(value: string|number|AnimateTimings, errors: Error[]) { - let timings: AnimateTimings|null = null; if (value.hasOwnProperty('duration')) { - timings = value as AnimateTimings; - } else if (typeof value == 'number') { + return value as AnimateTimings; + } + + if (typeof value == 'number') { const duration = resolveTiming(value, errors).duration; return makeTimingAst(duration, 0, ''); } @@ -578,7 +579,7 @@ function constructTimingAst(value: string|number|AnimateTimings, errors: Error[] return ast as DynamicTimingAst; } - timings = timings || resolveTiming(strValue, errors); + const timings = resolveTiming(strValue, errors); return makeTimingAst(timings.duration, timings.delay, timings.easing); }