From 436af15d63489e3e91960d30f45f7c3c2292c125 Mon Sep 17 00:00:00 2001 From: Pawel Kozlowski Date: Thu, 8 Sep 2016 22:54:10 +0200 Subject: [PATCH] refactor: remove parseFloat from facades (#11446) --- modules/@angular/compiler/src/animation/animation_parser.ts | 6 +++--- modules/@angular/compiler/src/expression_parser/lexer.ts | 3 +-- modules/@angular/core/src/animation/metadata.ts | 4 ++-- modules/@angular/facade/src/lang.ts | 3 --- .../@angular/forms/src/directives/number_value_accessor.ts | 4 ++-- 5 files changed, 8 insertions(+), 12 deletions(-) diff --git a/modules/@angular/compiler/src/animation/animation_parser.ts b/modules/@angular/compiler/src/animation/animation_parser.ts index 40ab414ea5..4870b2804d 100644 --- a/modules/@angular/compiler/src/animation/animation_parser.ts +++ b/modules/@angular/compiler/src/animation/animation_parser.ts @@ -8,7 +8,7 @@ import {CompileAnimationAnimateMetadata, CompileAnimationEntryMetadata, CompileAnimationGroupMetadata, CompileAnimationKeyframesSequenceMetadata, CompileAnimationMetadata, CompileAnimationSequenceMetadata, CompileAnimationStateDeclarationMetadata, CompileAnimationStateTransitionMetadata, CompileAnimationStyleMetadata, CompileAnimationWithStepsMetadata} from '../compile_metadata'; import {ListWrapper, StringMapWrapper} from '../facade/collection'; -import {NumberWrapper, isArray, isBlank, isPresent, isString, isStringMap} from '../facade/lang'; +import {isArray, isBlank, isPresent, isString, isStringMap} from '../facade/lang'; import {Math} from '../facade/math'; import {ParseError} from '../parse_util'; @@ -504,7 +504,7 @@ function _parseTimeExpression( return new _AnimationTimings(0, 0, null); } - var durationMatch = NumberWrapper.parseFloat(matches[1]); + var durationMatch = parseFloat(matches[1]); var durationUnit = matches[2]; if (durationUnit == 's') { durationMatch *= _ONE_SECOND; @@ -514,7 +514,7 @@ function _parseTimeExpression( var delayMatch = matches[3]; var delayUnit = matches[4]; if (isPresent(delayMatch)) { - var delayVal: number = NumberWrapper.parseFloat(delayMatch); + var delayVal: number = parseFloat(delayMatch); if (isPresent(delayUnit) && delayUnit == 's') { delayVal *= _ONE_SECOND; } diff --git a/modules/@angular/compiler/src/expression_parser/lexer.ts b/modules/@angular/compiler/src/expression_parser/lexer.ts index 5f56f482b7..b40ac2c3bc 100644 --- a/modules/@angular/compiler/src/expression_parser/lexer.ts +++ b/modules/@angular/compiler/src/expression_parser/lexer.ts @@ -276,8 +276,7 @@ class _Scanner { this.advance(); } var str: string = this.input.substring(start, this.index); - var value: number = - simple ? NumberWrapper.parseIntAutoRadix(str) : NumberWrapper.parseFloat(str); + var value: number = simple ? NumberWrapper.parseIntAutoRadix(str) : parseFloat(str); return newNumberToken(start, value); } diff --git a/modules/@angular/core/src/animation/metadata.ts b/modules/@angular/core/src/animation/metadata.ts index 853745d039..b097268131 100644 --- a/modules/@angular/core/src/animation/metadata.ts +++ b/modules/@angular/core/src/animation/metadata.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {NumberWrapper, isArray, isPresent, isString} from '../facade/lang'; +import {isArray, isPresent, isString} from '../facade/lang'; /** * @experimental Animation support is experimental. @@ -339,7 +339,7 @@ export function style( input.forEach(entry => { var entryOffset = (entry as any /** TODO #9100 */)['offset']; if (isPresent(entryOffset)) { - offset = offset == null ? NumberWrapper.parseFloat(entryOffset) : offset; + offset = offset == null ? parseFloat(entryOffset) : offset; } }); } diff --git a/modules/@angular/facade/src/lang.ts b/modules/@angular/facade/src/lang.ts index b54d0544d6..3b6de25bbd 100644 --- a/modules/@angular/facade/src/lang.ts +++ b/modules/@angular/facade/src/lang.ts @@ -272,9 +272,6 @@ export class NumberWrapper { throw new Error('Invalid integer literal when parsing ' + text + ' in base ' + radix); } - // TODO: NaN is a valid literal but is returned by parseFloat to indicate an error. - static parseFloat(text: string): number { return parseFloat(text); } - static get NaN(): number { return NaN; } static isNumeric(value: any): boolean { return !isNaN(value - parseFloat(value)); } diff --git a/modules/@angular/forms/src/directives/number_value_accessor.ts b/modules/@angular/forms/src/directives/number_value_accessor.ts index 4fec7a9f77..443d26ce93 100644 --- a/modules/@angular/forms/src/directives/number_value_accessor.ts +++ b/modules/@angular/forms/src/directives/number_value_accessor.ts @@ -8,7 +8,7 @@ import {Directive, ElementRef, Renderer, forwardRef} from '@angular/core'; -import {NumberWrapper, isBlank} from '../facade/lang'; +import {isBlank} from '../facade/lang'; import {ControlValueAccessor, NG_VALUE_ACCESSOR} from './control_value_accessor'; @@ -50,7 +50,7 @@ export class NumberValueAccessor implements ControlValueAccessor { } registerOnChange(fn: (_: number) => void): void { - this.onChange = (value) => { fn(value == '' ? null : NumberWrapper.parseFloat(value)); }; + this.onChange = (value) => { fn(value == '' ? null : parseFloat(value)); }; } registerOnTouched(fn: () => void): void { this.onTouched = fn; }