diff --git a/modules/@angular/benchpress/src/webdriver/firefox_driver_extension.ts b/modules/@angular/benchpress/src/webdriver/firefox_driver_extension.ts index 030ee28117..46ee36a87d 100644 --- a/modules/@angular/benchpress/src/webdriver/firefox_driver_extension.ts +++ b/modules/@angular/benchpress/src/webdriver/firefox_driver_extension.ts @@ -8,7 +8,7 @@ import {Injectable} from '@angular/core'; -import {StringWrapper, isPresent} from '../facade/lang'; +import {isPresent} from '../facade/lang'; import {WebDriverAdapter} from '../web_driver_adapter'; import {PerfLogEvent, PerfLogFeatures, WebDriverExtension} from '../web_driver_extension'; @@ -48,6 +48,6 @@ export class FirefoxDriverExtension extends WebDriverExtension { perfLogFeatures(): PerfLogFeatures { return new PerfLogFeatures({render: true, gc: true}); } supports(capabilities: {[key: string]: any}): boolean { - return StringWrapper.equals(capabilities['browserName'].toLowerCase(), 'firefox'); + return capabilities['browserName'].toLowerCase() === 'firefox'; } } diff --git a/modules/@angular/benchpress/src/webdriver/ios_driver_extension.ts b/modules/@angular/benchpress/src/webdriver/ios_driver_extension.ts index 00bc1d9808..3fdb818f08 100644 --- a/modules/@angular/benchpress/src/webdriver/ios_driver_extension.ts +++ b/modules/@angular/benchpress/src/webdriver/ios_driver_extension.ts @@ -8,7 +8,7 @@ import {Injectable} from '@angular/core'; -import {StringWrapper, isBlank, isPresent} from '../facade/lang'; +import {isBlank, isPresent} from '../facade/lang'; import {WebDriverAdapter} from '../web_driver_adapter'; import {PerfLogEvent, PerfLogFeatures, WebDriverExtension} from '../web_driver_extension'; @@ -42,7 +42,7 @@ export class IOsDriverExtension extends WebDriverExtension { var records: any[] = []; entries.forEach(entry => { var message = JSON.parse(entry['message'])['message']; - if (StringWrapper.equals(message['method'], 'Timeline.eventRecorded')) { + if (message['method'] === 'Timeline.eventRecorded') { records.push(message['params']['record']); } }); @@ -62,19 +62,16 @@ export class IOsDriverExtension extends WebDriverExtension { var startTime = record['startTime']; var endTime = record['endTime']; - if (StringWrapper.equals(type, 'FunctionCall') && - (isBlank(data) || !StringWrapper.equals(data['scriptName'], 'InjectedScript'))) { + if (type === 'FunctionCall' && (isBlank(data) || data['scriptName'] !== 'InjectedScript')) { events.push(createStartEvent('script', startTime)); endEvent = createEndEvent('script', endTime); - } else if (StringWrapper.equals(type, 'Time')) { + } else if (type === 'Time') { events.push(createMarkStartEvent(data['message'], startTime)); - } else if (StringWrapper.equals(type, 'TimeEnd')) { + } else if (type === 'TimeEnd') { events.push(createMarkEndEvent(data['message'], startTime)); } else if ( - StringWrapper.equals(type, 'RecalculateStyles') || StringWrapper.equals(type, 'Layout') || - StringWrapper.equals(type, 'UpdateLayerTree') || StringWrapper.equals(type, 'Paint') || - StringWrapper.equals(type, 'Rasterize') || - StringWrapper.equals(type, 'CompositeLayers')) { + type === 'RecalculateStyles' || type === 'Layout' || type === 'UpdateLayerTree' || + type === 'Paint' || type === 'Rasterize' || type === 'CompositeLayers') { events.push(createStartEvent('render', startTime)); endEvent = createEndEvent('render', endTime); } @@ -92,7 +89,7 @@ export class IOsDriverExtension extends WebDriverExtension { perfLogFeatures(): PerfLogFeatures { return new PerfLogFeatures({render: true}); } supports(capabilities: {[key: string]: any}): boolean { - return StringWrapper.equals(capabilities['browserName'].toLowerCase(), 'safari'); + return capabilities['browserName'].toLowerCase() === 'safari'; } } diff --git a/modules/@angular/benchpress/test/web_driver_extension_spec.ts b/modules/@angular/benchpress/test/web_driver_extension_spec.ts index eb968cfa5e..3609100d32 100644 --- a/modules/@angular/benchpress/test/web_driver_extension_spec.ts +++ b/modules/@angular/benchpress/test/web_driver_extension_spec.ts @@ -9,7 +9,7 @@ import {AsyncTestCompleter, describe, expect, inject, it} from '@angular/core/testing/testing_internal'; import {Options, ReflectiveInjector, WebDriverExtension} from '../index'; -import {StringWrapper, isPresent} from '../src/facade/lang'; +import {isPresent} from '../src/facade/lang'; export function main() { function createExtension(ids: any[], caps: any) { @@ -52,6 +52,6 @@ class MockExtension extends WebDriverExtension { constructor(public id: string) { super(); } supports(capabilities: {[key: string]: any}): boolean { - return StringWrapper.equals(capabilities['browser'], this.id); + return capabilities['browser'] === this.id; } } diff --git a/modules/@angular/common/test/pipes/json_pipe_spec.ts b/modules/@angular/common/test/pipes/json_pipe_spec.ts index 84fe860378..7c11c5ea33 100644 --- a/modules/@angular/common/test/pipes/json_pipe_spec.ts +++ b/modules/@angular/common/test/pipes/json_pipe_spec.ts @@ -11,7 +11,7 @@ import {Component} from '@angular/core'; import {TestBed, async} from '@angular/core/testing'; import {expect} from '@angular/platform-browser/testing/matchers'; -import {Json, StringWrapper} from '../../src/facade/lang'; +import {Json} from '../../src/facade/lang'; export function main() { describe('JsonPipe', () => { @@ -20,7 +20,7 @@ export function main() { var inceptionObjString: string; var pipe: JsonPipe; - function normalize(obj: string): string { return StringWrapper.replace(obj, regNewLine, ''); } + function normalize(obj: string): string { return obj.replace(regNewLine, ''); } beforeEach(() => { inceptionObj = {dream: {dream: {dream: 'Limbo'}}}; diff --git a/modules/@angular/compiler/src/css_parser/css_lexer.ts b/modules/@angular/compiler/src/css_parser/css_lexer.ts index 3966f203ed..dc690a33ce 100644 --- a/modules/@angular/compiler/src/css_parser/css_lexer.ts +++ b/modules/@angular/compiler/src/css_parser/css_lexer.ts @@ -9,7 +9,7 @@ import * as chars from '../chars'; import {BaseError} from '../facade/errors'; -import {StringWrapper, isPresent} from '../facade/lang'; +import {isPresent} from '../facade/lang'; export enum CssTokenType { EOF, @@ -155,7 +155,7 @@ export class CssScanner { } peekAt(index: number): number { - return index >= this.length ? chars.$EOF : StringWrapper.charCodeAt(this.input, index); + return index >= this.length ? chars.$EOF : this.input.charCodeAt(index); } consumeEmptyStatements(): void { @@ -310,7 +310,7 @@ export class CssScanner { return this.scanCharacter(); } - return this.error(`Unexpected character [${StringWrapper.fromCharCode(peek)}]`); + return this.error(`Unexpected character [${String.fromCharCode(peek)}]`); } scanComment(): CssToken { @@ -476,8 +476,7 @@ export class CssScanner { var index: number = this.index; var column: number = this.column; var line: number = this.line; - errorTokenValue = - isPresent(errorTokenValue) ? errorTokenValue : StringWrapper.fromCharCode(this.peek); + errorTokenValue = isPresent(errorTokenValue) ? errorTokenValue : String.fromCharCode(this.peek); var invalidToken = new CssToken(index, column, line, CssTokenType.Invalid, errorTokenValue); var errorMessage = generateErrorMessage(this.input, message, errorTokenValue, index, line, column); @@ -696,11 +695,11 @@ function isValidCssCharacter(code: number, mode: CssLexerMode): boolean { } function charCode(input: string, index: number): number { - return index >= input.length ? chars.$EOF : StringWrapper.charCodeAt(input, index); + return index >= input.length ? chars.$EOF : input.charCodeAt(index); } function charStr(code: number): string { - return StringWrapper.fromCharCode(code); + return String.fromCharCode(code); } export function isNewline(code: number): boolean { diff --git a/modules/@angular/compiler/src/expression_parser/lexer.ts b/modules/@angular/compiler/src/expression_parser/lexer.ts index b40ac2c3bc..a03521f7a7 100644 --- a/modules/@angular/compiler/src/expression_parser/lexer.ts +++ b/modules/@angular/compiler/src/expression_parser/lexer.ts @@ -8,7 +8,7 @@ import {Injectable} from '@angular/core'; import * as chars from '../chars'; -import {NumberWrapper, StringJoiner, StringWrapper, isPresent} from '../facade/lang'; +import {NumberWrapper, StringJoiner, isPresent} from '../facade/lang'; export enum TokenType { Character, @@ -93,7 +93,7 @@ export class Token { } function newCharacterToken(index: number, code: number): Token { - return new Token(index, TokenType.Character, code, StringWrapper.fromCharCode(code)); + return new Token(index, TokenType.Character, code, String.fromCharCode(code)); } function newIdentifierToken(index: number, text: string): Token { @@ -133,8 +133,7 @@ class _Scanner { } advance() { - this.peek = - ++this.index >= this.length ? chars.$EOF : StringWrapper.charCodeAt(this.input, this.index); + this.peek = ++this.index >= this.length ? chars.$EOF : this.input.charCodeAt(this.index); } scanToken(): Token { @@ -146,7 +145,7 @@ class _Scanner { peek = chars.$EOF; break; } else { - peek = StringWrapper.charCodeAt(input, index); + peek = input.charCodeAt(index); } } @@ -187,16 +186,16 @@ class _Scanner { case chars.$SLASH: case chars.$PERCENT: case chars.$CARET: - return this.scanOperator(start, StringWrapper.fromCharCode(peek)); + return this.scanOperator(start, String.fromCharCode(peek)); case chars.$QUESTION: return this.scanComplexOperator(start, '?', chars.$PERIOD, '.'); case chars.$LT: case chars.$GT: - return this.scanComplexOperator(start, StringWrapper.fromCharCode(peek), chars.$EQ, '='); + return this.scanComplexOperator(start, String.fromCharCode(peek), chars.$EQ, '='); case chars.$BANG: case chars.$EQ: return this.scanComplexOperator( - start, StringWrapper.fromCharCode(peek), chars.$EQ, '=', chars.$EQ, '='); + start, String.fromCharCode(peek), chars.$EQ, '=', chars.$EQ, '='); case chars.$AMPERSAND: return this.scanComplexOperator(start, '&', chars.$AMPERSAND, '&'); case chars.$BAR: @@ -207,7 +206,7 @@ class _Scanner { } this.advance(); - return this.error(`Unexpected character [${StringWrapper.fromCharCode(peek)}]`, 0); + return this.error(`Unexpected character [${String.fromCharCode(peek)}]`, 0); } scanCharacter(start: number, code: number): Token { @@ -310,7 +309,7 @@ class _Scanner { unescapedCode = unescape(this.peek); this.advance(); } - buffer.add(StringWrapper.fromCharCode(unescapedCode)); + buffer.add(String.fromCharCode(unescapedCode)); marker = this.index; } else if (this.peek == chars.$EOF) { return this.error('Unterminated quote', 0); diff --git a/modules/@angular/compiler/src/expression_parser/parser.ts b/modules/@angular/compiler/src/expression_parser/parser.ts index 717f7b3045..c7bfe4db84 100644 --- a/modules/@angular/compiler/src/expression_parser/parser.ts +++ b/modules/@angular/compiler/src/expression_parser/parser.ts @@ -9,7 +9,7 @@ import {Injectable} from '@angular/core'; import * as chars from '../chars'; -import {StringWrapper, escapeRegExp, isBlank, isPresent} from '../facade/lang'; +import {escapeRegExp, isBlank, isPresent} from '../facade/lang'; import {DEFAULT_INTERPOLATION_CONFIG, InterpolationConfig} from '../ml_parser/interpolation_config'; import {AST, ASTWithSource, AstVisitor, Binary, BindingPipe, Chain, Conditional, EmptyExpr, FunctionCall, ImplicitReceiver, Interpolation, KeyedRead, KeyedWrite, LiteralArray, LiteralMap, LiteralPrimitive, MethodCall, ParseSpan, ParserError, PrefixNot, PropertyRead, PropertyWrite, Quote, SafeMethodCall, SafePropertyRead, TemplateBinding} from './ast'; @@ -122,7 +122,7 @@ export class Parser { input: string, location: string, interpolationConfig: InterpolationConfig = DEFAULT_INTERPOLATION_CONFIG): SplitInterpolation { const regexp = _createInterpolateRegExp(interpolationConfig); - const parts = StringWrapper.split(input, regexp); + const parts = input.split(regexp); if (parts.length <= 1) { return null; } @@ -160,8 +160,8 @@ export class Parser { private _commentStart(input: string): number { var outerQuote: number = null; for (let i = 0; i < input.length - 1; i++) { - const char = StringWrapper.charCodeAt(input, i); - const nextChar = StringWrapper.charCodeAt(input, i + 1); + const char = input.charCodeAt(i); + const nextChar = input.charCodeAt(i + 1); if (char === chars.$SLASH && nextChar == chars.$SLASH && isBlank(outerQuote)) return i; @@ -177,7 +177,7 @@ export class Parser { private _checkNoInterpolation( input: string, location: any, interpolationConfig: InterpolationConfig): void { var regexp = _createInterpolateRegExp(interpolationConfig); - var parts = StringWrapper.split(input, regexp); + var parts = input.split(regexp); if (parts.length > 1) { this._reportError( `Got interpolation (${interpolationConfig.start}${interpolationConfig.end}) where expression was expected`, @@ -239,7 +239,7 @@ export class _ParseAST { expectCharacter(code: number) { if (this.optionalCharacter(code)) return; - this.error(`Missing expected ${StringWrapper.fromCharCode(code)}`); + this.error(`Missing expected ${String.fromCharCode(code)}`); } optionalOperator(op: string): boolean { diff --git a/modules/@angular/compiler/src/output/abstract_emitter.ts b/modules/@angular/compiler/src/output/abstract_emitter.ts index f9ed12a5fe..535ca34530 100644 --- a/modules/@angular/compiler/src/output/abstract_emitter.ts +++ b/modules/@angular/compiler/src/output/abstract_emitter.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {StringWrapper, isBlank, isPresent, isString} from '../facade/lang'; +import {isBlank, isPresent, isString} from '../facade/lang'; import * as o from './output_ast'; @@ -409,18 +409,17 @@ export function escapeIdentifier( if (isBlank(input)) { return null; } - var body = StringWrapper.replaceAllMapped( - input, _SINGLE_QUOTE_ESCAPE_STRING_RE, (match: any /** TODO #9100 */) => { - if (match[0] == '$') { - return escapeDollar ? '\\$' : '$'; - } else if (match[0] == '\n') { - return '\\n'; - } else if (match[0] == '\r') { - return '\\r'; - } else { - return `\\${match[0]}`; - } - }); + var body = input.replace(_SINGLE_QUOTE_ESCAPE_STRING_RE, (...match: string[]) => { + if (match[0] == '$') { + return escapeDollar ? '\\$' : '$'; + } else if (match[0] == '\n') { + return '\\n'; + } else if (match[0] == '\r') { + return '\\r'; + } else { + return `\\${match[0]}`; + } + }); let requiresQuotes = alwaysQuote || !_LEGAL_IDENTIFIER_RE.test(body); return requiresQuotes ? `'${body}'` : body; } diff --git a/modules/@angular/compiler/src/style_url_resolver.ts b/modules/@angular/compiler/src/style_url_resolver.ts index 3ac5aac09e..e60030c2f5 100644 --- a/modules/@angular/compiler/src/style_url_resolver.ts +++ b/modules/@angular/compiler/src/style_url_resolver.ts @@ -9,7 +9,7 @@ // Some of the code comes from WebComponents.JS // https://github.com/webcomponents/webcomponentsjs/blob/master/src/HTMLImports/path.js -import {StringWrapper, isBlank, isPresent} from './facade/lang'; +import {isBlank, isPresent} from './facade/lang'; import {UrlResolver} from './url_resolver'; @@ -30,8 +30,8 @@ export function isStyleUrlResolvable(url: string): boolean { export function extractStyleUrls( resolver: UrlResolver, baseUrl: string, cssText: string): StyleWithImports { var foundUrls: string[] = []; - var modifiedCssText = StringWrapper.replaceAllMapped(cssText, _cssImportRe, (m: string[]) => { - var url = isPresent(m[1]) ? m[1] : m[2]; + var modifiedCssText = cssText.replace(_cssImportRe, function(...m: string[]) { + const url = isPresent(m[1]) ? m[1] : m[2]; if (!isStyleUrlResolvable(url)) { // Do not attempt to resolve non-package absolute URLs with URI scheme return m[0]; diff --git a/modules/@angular/compiler/src/url_resolver.ts b/modules/@angular/compiler/src/url_resolver.ts index 27dfd2bd5c..fc86383f07 100644 --- a/modules/@angular/compiler/src/url_resolver.ts +++ b/modules/@angular/compiler/src/url_resolver.ts @@ -8,7 +8,7 @@ import {Inject, Injectable, PACKAGE_ROOT_URL} from '@angular/core'; -import {StringWrapper, isBlank, isPresent} from './facade/lang'; +import {isBlank, isPresent} from './facade/lang'; const _ASSET_SCHEME = 'asset:'; @@ -74,8 +74,8 @@ export class UrlResolver { var pathSegements = path.split(/\//); resolvedUrl = `asset:${pathSegements[0]}/lib/${pathSegements.slice(1).join('/')}`; } else { - prefix = StringWrapper.stripRight(prefix, '/'); - path = StringWrapper.stripLeft(path, '/'); + prefix = prefix.replace(/\/+$/, ''); + path = path.replace(/^\/+/, ''); return `${prefix}/${path}`; } } diff --git a/modules/@angular/compiler/src/util.ts b/modules/@angular/compiler/src/util.ts index 0cc6789032..e46b8d3653 100644 --- a/modules/@angular/compiler/src/util.ts +++ b/modules/@angular/compiler/src/util.ts @@ -7,7 +7,7 @@ */ import {CompileTokenMetadata} from './compile_metadata'; -import {StringWrapper, isArray, isBlank, isPresent, isPrimitive, isStrictStringMap} from './facade/lang'; +import {isArray, isBlank, isPresent, isPrimitive, isStrictStringMap} from './facade/lang'; import * as o from './output/output_ast'; export const MODULE_SUFFIX = ''; @@ -15,8 +15,7 @@ export const MODULE_SUFFIX = ''; var CAMEL_CASE_REGEXP = /([A-Z])/g; export function camelCaseToDashCase(input: string): string { - return StringWrapper.replaceAllMapped( - input, CAMEL_CASE_REGEXP, (m: string[]) => '-' + m[1].toLowerCase()); + return input.replace(CAMEL_CASE_REGEXP, (...m: any[]) => '-' + m[1].toLowerCase()); } export function splitAtColon(input: string, defaultValues: string[]): string[] { @@ -34,7 +33,7 @@ function _splitAt(input: string, character: string, defaultValues: string[]): st } export function sanitizeIdentifier(name: string): string { - return StringWrapper.replaceAll(name, /\W/g, '_'); + return name.replace(/\W/g, '_'); } export function visitValue(value: any, visitor: ValueVisitor, context: any): any { diff --git a/modules/@angular/compiler/src/view_compiler/event_binder.ts b/modules/@angular/compiler/src/view_compiler/event_binder.ts index 504923a7df..0a56f2b9e6 100644 --- a/modules/@angular/compiler/src/view_compiler/event_binder.ts +++ b/modules/@angular/compiler/src/view_compiler/event_binder.ts @@ -7,7 +7,7 @@ */ import {CompileDirectiveMetadata} from '../compile_metadata'; -import {StringWrapper, isPresent} from '../facade/lang'; +import {isPresent} from '../facade/lang'; import {identifierToken} from '../identifiers'; import * as o from '../output/output_ast'; import {BoundEventAst, DirectiveAst} from '../template_parser/template_ast'; @@ -200,5 +200,5 @@ function convertStmtIntoExpression(stmt: o.Statement): o.Expression { } function santitizeEventName(name: string): string { - return StringWrapper.replaceAll(name, /[^a-zA-Z_]/g, '_'); + return name.replace(/[^a-zA-Z_]/g, '_'); } diff --git a/modules/@angular/compiler/src/view_compiler/view_builder.ts b/modules/@angular/compiler/src/view_compiler/view_builder.ts index 4fdb24f7d1..04632f8788 100644 --- a/modules/@angular/compiler/src/view_compiler/view_builder.ts +++ b/modules/@angular/compiler/src/view_compiler/view_builder.ts @@ -10,7 +10,7 @@ import {ViewEncapsulation} from '@angular/core'; import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompileTokenMetadata} from '../compile_metadata'; import {ListWrapper} from '../facade/collection'; -import {StringWrapper, isPresent} from '../facade/lang'; +import {isPresent} from '../facade/lang'; import {Identifiers, identifierToken, resolveIdentifier} from '../identifiers'; import * as o from '../output/output_ast'; import {ChangeDetectorStatus, ViewType, isDefaultChangeDetectionStrategy} from '../private_import_core'; @@ -376,7 +376,7 @@ function mapToKeyValueArray(data: {[key: string]: string}): string[][] { Object.keys(data).forEach(name => { entryArray.push([name, data[name]]); }); // We need to sort to get a defined output order // for tests and for caching generated artifacts... - ListWrapper.sort(entryArray, (entry1, entry2) => StringWrapper.compare(entry1[0], entry2[0])); + ListWrapper.sort(entryArray); return entryArray; } diff --git a/modules/@angular/compiler/test/expression_parser/unparser.ts b/modules/@angular/compiler/test/expression_parser/unparser.ts index 54ddf0790c..2c87e998c8 100644 --- a/modules/@angular/compiler/test/expression_parser/unparser.ts +++ b/modules/@angular/compiler/test/expression_parser/unparser.ts @@ -7,7 +7,7 @@ */ import {AST, AstVisitor, Binary, BindingPipe, Chain, Conditional, FunctionCall, ImplicitReceiver, Interpolation, KeyedRead, KeyedWrite, LiteralArray, LiteralMap, LiteralPrimitive, MethodCall, PrefixNot, PropertyRead, PropertyWrite, Quote, SafeMethodCall, SafePropertyRead} from '../../src/expression_parser/ast'; -import {StringWrapper, isString} from '../../src/facade/lang'; +import {isString} from '../../src/facade/lang'; import {DEFAULT_INTERPOLATION_CONFIG, InterpolationConfig} from '../../src/ml_parser/interpolation_config'; class Unparser implements AstVisitor { @@ -134,7 +134,7 @@ class Unparser implements AstVisitor { visitLiteralPrimitive(ast: LiteralPrimitive, context: any) { if (isString(ast.value)) { - this._expression += `"${StringWrapper.replaceAll(ast.value, Unparser._quoteRegExp, '\"')}"`; + this._expression += `"${ast.value.replace( Unparser._quoteRegExp, '\"')}"`; } else { this._expression += `${ast.value}`; } diff --git a/modules/@angular/core/src/application_tokens.ts b/modules/@angular/core/src/application_tokens.ts index f41ad681d6..b33e364f90 100644 --- a/modules/@angular/core/src/application_tokens.ts +++ b/modules/@angular/core/src/application_tokens.ts @@ -6,8 +6,6 @@ * found in the LICENSE file at https://angular.io/license */ -import {StringWrapper} from '../src/facade/lang'; - import {OpaqueToken} from './di'; @@ -38,7 +36,7 @@ export const APP_ID_RANDOM_PROVIDER = { }; function _randomChar(): string { - return StringWrapper.fromCharCode(97 + Math.floor(Math.random() * 25)); + return String.fromCharCode(97 + Math.floor(Math.random() * 25)); } /** diff --git a/modules/@angular/core/test/linker/query_list_spec.ts b/modules/@angular/core/test/linker/query_list_spec.ts index 6832fa7eb5..bef63834c4 100644 --- a/modules/@angular/core/test/linker/query_list_spec.ts +++ b/modules/@angular/core/test/linker/query_list_spec.ts @@ -12,7 +12,6 @@ import {beforeEach, describe, expect, it} from '@angular/core/testing/testing_in import {getDOM} from '@angular/platform-browser/src/dom/dom_adapter'; import {iterateListLike} from '../../src/facade/collection'; -import {StringWrapper} from '../../src/facade/lang'; interface _JsQueryList { filter(c: any): any; @@ -104,8 +103,8 @@ export function main() { it('should support toString', () => { queryList.reset(['one', 'two']); var listString = queryList.toString(); - expect(StringWrapper.contains(listString, 'one')).toBeTruthy(); - expect(StringWrapper.contains(listString, 'two')).toBeTruthy(); + expect(listString.indexOf('one') != -1).toBeTruthy(); + expect(listString.indexOf('two') != -1).toBeTruthy(); }); it('should support first and last', () => { diff --git a/modules/@angular/facade/src/lang.ts b/modules/@angular/facade/src/lang.ts index 982528761f..93c4857c5c 100644 --- a/modules/@angular/facade/src/lang.ts +++ b/modules/@angular/facade/src/lang.ts @@ -137,73 +137,6 @@ export function stringify(token: any): string { return newLineIndex === -1 ? res : res.substring(0, newLineIndex); } -export class StringWrapper { - static fromCharCode(code: number): string { return String.fromCharCode(code); } - - static charCodeAt(s: string, index: number): number { return s.charCodeAt(index); } - - static split(s: string, regExp: RegExp): string[] { return s.split(regExp); } - - static equals(s: string, s2: string): boolean { return s === s2; } - - static stripLeft(s: string, charVal: string): string { - if (s && s.length) { - var pos = 0; - for (var i = 0; i < s.length; i++) { - if (s[i] != charVal) break; - pos++; - } - s = s.substring(pos); - } - return s; - } - - static stripRight(s: string, charVal: string): string { - if (s && s.length) { - var pos = s.length; - for (var i = s.length - 1; i >= 0; i--) { - if (s[i] != charVal) break; - pos--; - } - s = s.substring(0, pos); - } - return s; - } - - static replace(s: string, from: string, replace: string): string { - return s.replace(from, replace); - } - - static replaceAll(s: string, from: RegExp, replace: string): string { - return s.replace(from, replace); - } - - static slice(s: string, from: number = 0, to: number = null): string { - return s.slice(from, to === null ? undefined : to); - } - - static replaceAllMapped(s: string, from: RegExp, cb: (m: string[]) => string): string { - return s.replace(from, function(...matches: any[]) { - // Remove offset & string from the result array - matches.splice(-2, 2); - // The callback receives match, p1, ..., pn - return cb(matches); - }); - } - - static contains(s: string, substr: string): boolean { return s.indexOf(substr) != -1; } - - static compare(a: string, b: string): number { - if (a < b) { - return -1; - } else if (a > b) { - return 1; - } else { - return 0; - } - } -} - export class StringJoiner { constructor(public parts: string[] = []) {} diff --git a/modules/@angular/facade/test/lang_spec.ts b/modules/@angular/facade/test/lang_spec.ts index 3b5137ba48..98aaea30f8 100644 --- a/modules/@angular/facade/test/lang_spec.ts +++ b/modules/@angular/facade/test/lang_spec.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {NumberWrapper, StringWrapper, escapeRegExp, hasConstructor} from '../src/lang'; +import {NumberWrapper, escapeRegExp, hasConstructor} from '../src/lang'; class MySuperclass {} class MySubclass extends MySuperclass {} @@ -50,92 +50,4 @@ export function main() { () => { expect(NumberWrapper.isNumeric('2a')).toBe(false); }); }); }); - - describe('String', () => { - var s: string; - - describe('slice', () => { - beforeEach(() => { s = 'abcdefghij'; }); - - it('should return the whole string if neither start nor end are specified', - () => { expect(StringWrapper.slice(s)).toEqual('abcdefghij'); }); - - it('should return up to the end if end is not specified', - () => { expect(StringWrapper.slice(s, 1)).toEqual('bcdefghij'); }); - - it('should support negative start', - () => { expect(StringWrapper.slice(s, -1)).toEqual('j'); }); - - it('should support negative end', - () => { expect(StringWrapper.slice(s, -3, -1)).toEqual('hi'); }); - - it('should return empty string if start is greater than end', () => { - expect(StringWrapper.slice(s, 4, 2)).toEqual(''); - expect(StringWrapper.slice(s, -2, -4)).toEqual(''); - }); - }); - - describe('stripLeft', () => { - it('should strip the first character of the string if it matches the provided input', () => { - var input = '~angular2 is amazing'; - var expectedOutput = 'angular2 is amazing'; - - expect(StringWrapper.stripLeft(input, '~')).toEqual(expectedOutput); - }); - - it('should keep stripping characters from the start until the first unmatched character', - () => { - var input = '#####hello'; - var expectedOutput = 'hello'; - expect(StringWrapper.stripLeft(input, '#')).toEqual(expectedOutput); - }); - - it('should not alter the provided input if the first character does not match the provided input', - () => { - var input = '+angular2 is amazing'; - expect(StringWrapper.stripLeft(input, '*')).toEqual(input); - }); - - it('should not do any alterations when an empty string or null value is passed in', () => { - expect(StringWrapper.stripLeft('', 'S')).toEqual(''); - expect(StringWrapper.stripLeft(null, 'S')).toEqual(null); - }); - }); - - describe('stripRight', () => { - it('should strip the first character of the string if it matches the provided input', () => { - var input = 'angular2 is amazing!'; - var expectedOutput = 'angular2 is amazing'; - - expect(StringWrapper.stripRight(input, '!')).toEqual(expectedOutput); - }); - - it('should not alter the provided input if the first character does not match the provided input', - () => { - var input = 'angular2 is amazing+'; - - expect(StringWrapper.stripRight(input, '*')).toEqual(input); - }); - - it('should keep stripping characters from the end until the first unmatched character', - () => { - var input = 'hi&!&&&&&'; - var expectedOutput = 'hi&!'; - expect(StringWrapper.stripRight(input, '&')).toEqual(expectedOutput); - }); - - it('should not do any alterations when an empty string or null value is passed in', () => { - expect(StringWrapper.stripRight('', 'S')).toEqual(''); - expect(StringWrapper.stripRight(null, 'S')).toEqual(null); - }); - }); - - describe('hasConstructor', () => { - it('should be true when the type matches', - () => { expect(hasConstructor(new MySuperclass(), MySuperclass)).toEqual(true); }); - - it('should be false for subtypes', - () => { expect(hasConstructor(new MySubclass(), MySuperclass)).toEqual(false); }); - }); - }); } diff --git a/modules/@angular/forms/src/directives/select_control_value_accessor.ts b/modules/@angular/forms/src/directives/select_control_value_accessor.ts index d0d095db03..e81ff430b3 100644 --- a/modules/@angular/forms/src/directives/select_control_value_accessor.ts +++ b/modules/@angular/forms/src/directives/select_control_value_accessor.ts @@ -9,7 +9,7 @@ import {Directive, ElementRef, Host, Input, OnDestroy, Optional, Renderer, forwardRef} from '@angular/core'; import {MapWrapper} from '../facade/collection'; -import {StringWrapper, isBlank, isPresent, isPrimitive, looseIdentical} from '../facade/lang'; +import {isBlank, isPresent, isPrimitive, looseIdentical} from '../facade/lang'; import {ControlValueAccessor, NG_VALUE_ACCESSOR} from './control_value_accessor'; @@ -22,7 +22,7 @@ export const SELECT_VALUE_ACCESSOR: any = { function _buildValueString(id: string, value: any): string { if (isBlank(id)) return `${value}`; if (!isPrimitive(value)) value = 'Object'; - return StringWrapper.slice(`${id}: ${value}`, 0, 50); + return `${id}: ${value}`.slice(0, 50); } function _extractId(valueString: string): string { diff --git a/modules/@angular/forms/src/directives/select_multiple_control_value_accessor.ts b/modules/@angular/forms/src/directives/select_multiple_control_value_accessor.ts index 18ed1b5c5f..70c14d67c5 100644 --- a/modules/@angular/forms/src/directives/select_multiple_control_value_accessor.ts +++ b/modules/@angular/forms/src/directives/select_multiple_control_value_accessor.ts @@ -9,7 +9,7 @@ import {Directive, ElementRef, Host, Input, OnDestroy, OpaqueToken, Optional, Renderer, Type, forwardRef} from '@angular/core'; import {MapWrapper} from '../facade/collection'; -import {StringWrapper, isBlank, isPresent, isPrimitive, isString, looseIdentical} from '../facade/lang'; +import {isBlank, isPresent, isPrimitive, isString, looseIdentical} from '../facade/lang'; import {ControlValueAccessor, NG_VALUE_ACCESSOR} from './control_value_accessor'; @@ -23,7 +23,7 @@ function _buildValueString(id: string, value: any): string { if (isBlank(id)) return `${value}`; if (isString(value)) value = `'${value}'`; if (!isPrimitive(value)) value = 'Object'; - return StringWrapper.slice(`${id}: ${value}`, 0, 50); + return `${id}: ${value}`.slice(0, 50); } function _extractId(valueString: string): string { diff --git a/modules/@angular/http/src/backends/jsonp_backend.ts b/modules/@angular/http/src/backends/jsonp_backend.ts index ff736aa73d..84d4e31094 100644 --- a/modules/@angular/http/src/backends/jsonp_backend.ts +++ b/modules/@angular/http/src/backends/jsonp_backend.ts @@ -12,7 +12,7 @@ import {Observer} from 'rxjs/Observer'; import {ResponseOptions} from '../base_response_options'; import {ReadyState, RequestMethod, ResponseType} from '../enums'; -import {StringWrapper, isPresent} from '../facade/lang'; +import {isPresent} from '../facade/lang'; import {Connection, ConnectionBackend} from '../interfaces'; import {Request} from '../static_request'; import {Response} from '../static_response'; @@ -75,7 +75,7 @@ export class JSONPConnection_ extends JSONPConnection { let callback = _dom.requestCallback(this._id); let url: string = req.url; if (url.indexOf('=JSONP_CALLBACK&') > -1) { - url = StringWrapper.replace(url, '=JSONP_CALLBACK&', `=${callback}&`); + url = url.replace('=JSONP_CALLBACK&', `=${callback}&`); } else if (url.lastIndexOf('=JSONP_CALLBACK') === url.length - '=JSONP_CALLBACK'.length) { url = url.substring(0, url.length - '=JSONP_CALLBACK'.length) + `=${callback}`; } diff --git a/modules/@angular/http/src/static_request.ts b/modules/@angular/http/src/static_request.ts index d54eb04d82..52240f6fca 100644 --- a/modules/@angular/http/src/static_request.ts +++ b/modules/@angular/http/src/static_request.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {StringWrapper, isPresent} from '../src/facade/lang'; +import {isPresent} from '../src/facade/lang'; import {Body} from './body'; import {ContentType, RequestMethod, ResponseContentType} from './enums'; @@ -82,7 +82,7 @@ export class Request extends Body { let search = requestOptions.search.toString(); if (search.length > 0) { let prefix = '?'; - if (StringWrapper.contains(this.url, '?')) { + if (this.url.indexOf('?') != -1) { prefix = (this.url[this.url.length - 1] == '&') ? '' : '&'; } // TODO: just delete search-query-looking string in url? diff --git a/modules/@angular/platform-browser/src/dom/dom_renderer.ts b/modules/@angular/platform-browser/src/dom/dom_renderer.ts index bd5c68d0db..955182d141 100644 --- a/modules/@angular/platform-browser/src/dom/dom_renderer.ts +++ b/modules/@angular/platform-browser/src/dom/dom_renderer.ts @@ -7,7 +7,7 @@ */ import {Inject, Injectable, RenderComponentType, Renderer, RootRenderer, ViewEncapsulation} from '@angular/core'; -import {Json, StringWrapper, isArray, isBlank, isPresent, isString, stringify} from '../facade/lang'; +import {Json, isArray, isBlank, isPresent, isString, stringify} from '../facade/lang'; import {AnimationKeyframe, AnimationPlayer, AnimationStyles, RenderDebugInfo} from '../private_import_core'; import {AnimationDriver} from './animation_driver'; @@ -192,13 +192,12 @@ export class DomRenderer implements Renderer { setBindingDebugInfo(renderElement: any, propertyName: string, propertyValue: string): void { var dashCasedPropertyName = camelCaseToDashCase(propertyName); if (getDOM().isCommentNode(renderElement)) { - const existingBindings = StringWrapper.replaceAll(getDOM().getText(renderElement), /\n/g, '') - .match(TEMPLATE_BINDINGS_EXP); + const existingBindings = + getDOM().getText(renderElement).replace(/\n/g, '').match(TEMPLATE_BINDINGS_EXP); var parsedBindings = Json.parse(existingBindings[1]); (parsedBindings as any /** TODO #9100 */)[dashCasedPropertyName] = propertyValue; getDOM().setText( - renderElement, - StringWrapper.replace(TEMPLATE_COMMENT_TEXT, '{}', Json.stringify(parsedBindings))); + renderElement, TEMPLATE_COMMENT_TEXT.replace('{}', Json.stringify(parsedBindings))); } else { this.setElementAttribute(renderElement, propertyName, propertyValue); } @@ -272,11 +271,11 @@ export const HOST_ATTR = `_nghost-${COMPONENT_VARIABLE}`; export const CONTENT_ATTR = `_ngcontent-${COMPONENT_VARIABLE}`; function _shimContentAttribute(componentShortId: string): string { - return StringWrapper.replaceAll(CONTENT_ATTR, COMPONENT_REGEX, componentShortId); + return CONTENT_ATTR.replace(COMPONENT_REGEX, componentShortId); } function _shimHostAttribute(componentShortId: string): string { - return StringWrapper.replaceAll(HOST_ATTR, COMPONENT_REGEX, componentShortId); + return HOST_ATTR.replace(COMPONENT_REGEX, componentShortId); } function _flattenStyles(compId: string, styles: Array, target: string[]): string[] { @@ -285,7 +284,7 @@ function _flattenStyles(compId: string, styles: Array, target: string if (isArray(style)) { _flattenStyles(compId, style, target); } else { - style = StringWrapper.replaceAll(style, COMPONENT_REGEX, compId); + style = style.replace(COMPONENT_REGEX, compId); target.push(style); } } diff --git a/modules/@angular/platform-browser/src/dom/events/key_events.ts b/modules/@angular/platform-browser/src/dom/events/key_events.ts index cf72578783..6c9a054fdd 100644 --- a/modules/@angular/platform-browser/src/dom/events/key_events.ts +++ b/modules/@angular/platform-browser/src/dom/events/key_events.ts @@ -9,7 +9,7 @@ import {Injectable, NgZone} from '@angular/core'; import {ListWrapper} from '../../facade/collection'; -import {StringWrapper, isPresent} from '../../facade/lang'; +import {isPresent} from '../../facade/lang'; import {getDOM} from '../dom_adapter'; import {EventManagerPlugin} from './event_manager'; @@ -50,9 +50,7 @@ export class KeyEventsPlugin extends EventManagerPlugin { var parts: string[] = eventName.toLowerCase().split('.'); var domEventName = parts.shift(); - if ((parts.length === 0) || - !(StringWrapper.equals(domEventName, 'keydown') || - StringWrapper.equals(domEventName, 'keyup'))) { + if ((parts.length === 0) || !(domEventName === 'keydown' || domEventName === 'keyup')) { return null; } @@ -82,9 +80,9 @@ export class KeyEventsPlugin extends EventManagerPlugin { var fullKey = ''; var key = getDOM().getEventKey(event); key = key.toLowerCase(); - if (StringWrapper.equals(key, ' ')) { + if (key === ' ') { key = 'space'; // for readability - } else if (StringWrapper.equals(key, '.')) { + } else if (key === '.') { key = 'dot'; // because '.' is used as a separator in event names } modifierKeys.forEach(modifierName => { @@ -102,7 +100,7 @@ export class KeyEventsPlugin extends EventManagerPlugin { static eventCallback(element: HTMLElement, fullKey: any, handler: Function, zone: NgZone): Function { return (event: any /** TODO #9100 */) => { - if (StringWrapper.equals(KeyEventsPlugin.getEventFullKey(event), fullKey)) { + if (KeyEventsPlugin.getEventFullKey(event) === fullKey) { zone.runGuarded(() => handler(event)); } }; diff --git a/modules/@angular/platform-browser/src/dom/util.ts b/modules/@angular/platform-browser/src/dom/util.ts index c482c4392e..c1f9ab9b20 100644 --- a/modules/@angular/platform-browser/src/dom/util.ts +++ b/modules/@angular/platform-browser/src/dom/util.ts @@ -6,18 +6,14 @@ * found in the LICENSE file at https://angular.io/license */ -import {StringWrapper} from '../facade/lang'; - var CAMEL_CASE_REGEXP = /([A-Z])/g; var DASH_CASE_REGEXP = /-([a-z])/g; export function camelCaseToDashCase(input: string): string { - return StringWrapper.replaceAllMapped( - input, CAMEL_CASE_REGEXP, (m: string[]) => '-' + m[1].toLowerCase()); + return input.replace(CAMEL_CASE_REGEXP, (...m: string[]) => '-' + m[1].toLowerCase()); } export function dashCaseToCamelCase(input: string): string { - return StringWrapper.replaceAllMapped( - input, DASH_CASE_REGEXP, (m: string[]) => m[1].toUpperCase()); + return input.replace(DASH_CASE_REGEXP, (...m: string[]) => m[1].toUpperCase()); } diff --git a/modules/@angular/platform-browser/src/dom/web_animations_driver.ts b/modules/@angular/platform-browser/src/dom/web_animations_driver.ts index ca8edbef5d..5ae2e2b39f 100644 --- a/modules/@angular/platform-browser/src/dom/web_animations_driver.ts +++ b/modules/@angular/platform-browser/src/dom/web_animations_driver.ts @@ -7,7 +7,8 @@ */ import {AUTO_STYLE} from '@angular/core'; -import {StringWrapper, isNumber, isPresent} from '../facade/lang'; + +import {isNumber, isPresent} from '../facade/lang'; import {AnimationKeyframe, AnimationStyles} from '../private_import_core'; import {AnimationDriver} from './animation_driver'; @@ -97,7 +98,7 @@ const _$PERIOD = 46; function _findDimensionalSuffix(value: string): string { for (var i = 0; i < value.length; i++) { - var c = StringWrapper.charCodeAt(value, i); + var c = value.charCodeAt(i); if ((c >= _$0 && c <= _$9) || c == _$PERIOD) continue; return value.substring(i, value.length); } diff --git a/modules/@angular/platform-browser/testing/browser_util.ts b/modules/@angular/platform-browser/testing/browser_util.ts index d147346980..529459a051 100644 --- a/modules/@angular/platform-browser/testing/browser_util.ts +++ b/modules/@angular/platform-browser/testing/browser_util.ts @@ -9,7 +9,7 @@ import {NgZone} from '@angular/core'; import {ListWrapper} from './facade/collection'; -import {StringWrapper, global, isPresent, isString} from './facade/lang'; +import {global, isPresent, isString} from './facade/lang'; import {getDOM} from './private_import_platform-browser'; export class BrowserDetection { @@ -83,16 +83,12 @@ export function el(html: string): HTMLElement { } export function normalizeCSS(css: string): string { - css = StringWrapper.replaceAll(css, /\s+/g, ' '); - css = StringWrapper.replaceAll(css, /:\s/g, ':'); - css = StringWrapper.replaceAll(css, /'/g, '"'); - css = StringWrapper.replaceAll(css, / }/g, '}'); - css = StringWrapper.replaceAllMapped( - css, /url\((\"|\s)(.+)(\"|\s)\)(\s*)/g, - (match: any /** TODO #9100 */) => `url("${match[2]}")`); - css = StringWrapper.replaceAllMapped( - css, /\[(.+)=([^"\]]+)\]/g, (match: any /** TODO #9100 */) => `[${match[1]}="${match[2]}"]`); - return css; + return css.replace(/\s+/g, ' ') + .replace(/:\s/g, ':') + .replace(/'/g, '"') + .replace(/ }/g, '}') + .replace(/url\((\"|\s)(.+)(\"|\s)\)(\s*)/g, (...match: string[]) => `url("${match[2]}")`) + .replace(/\[(.+)=([^"\]]+)\]/g, (...match: string[]) => `[${match[1]}="${match[2]}"]`); } var _singleTagWhitelist = ['br', 'hr', 'input']; diff --git a/modules/@angular/platform-webworker/src/web_workers/shared/client_message_broker.ts b/modules/@angular/platform-webworker/src/web_workers/shared/client_message_broker.ts index 5f8e1bd04b..2e5a7345ae 100644 --- a/modules/@angular/platform-webworker/src/web_workers/shared/client_message_broker.ts +++ b/modules/@angular/platform-webworker/src/web_workers/shared/client_message_broker.ts @@ -9,7 +9,7 @@ import {Injectable, Type} from '@angular/core'; import {EventEmitter} from '../../facade/async'; -import {StringWrapper, isPresent, print, stringify} from '../../facade/lang'; +import {isPresent, print, stringify} from '../../facade/lang'; import {MessageBus} from './message_bus'; import {Serializer} from './serializer'; @@ -129,10 +129,10 @@ export class ClientMessageBroker_ extends ClientMessageBroker { private _handleMessage(message: {[key: string]: any}): void { var data = new MessageData(message); // TODO(jteplitz602): replace these strings with messaging constants #3685 - if (StringWrapper.equals(data.type, 'result') || StringWrapper.equals(data.type, 'error')) { + if (data.type === 'result' || data.type === 'error') { var id = data.id; if (this._pending.has(id)) { - if (StringWrapper.equals(data.type, 'result')) { + if (data.type === 'result') { this._pending.get(id).resolve(data.value); } else { this._pending.get(id).reject(data.value); diff --git a/modules/@angular/platform-webworker/src/web_workers/worker/platform_location.ts b/modules/@angular/platform-webworker/src/web_workers/worker/platform_location.ts index 893663eca1..24ee966183 100644 --- a/modules/@angular/platform-webworker/src/web_workers/worker/platform_location.ts +++ b/modules/@angular/platform-webworker/src/web_workers/worker/platform_location.ts @@ -10,7 +10,6 @@ import {LocationChangeListener, PlatformLocation} from '@angular/common'; import {Injectable} from '@angular/core'; import {EventEmitter} from '../../facade/async'; -import {StringWrapper} from '../../facade/lang'; import {ClientMessageBroker, ClientMessageBrokerFactory, FnArg, UiArguments} from '../shared/client_message_broker'; import {MessageBus} from '../shared/message_bus'; import {ROUTER_CHANNEL} from '../shared/messaging_api'; @@ -38,9 +37,9 @@ export class WebWorkerPlatformLocation extends PlatformLocation { var listeners: Array = null; if (msg.hasOwnProperty('event')) { let type: string = msg['event']['type']; - if (StringWrapper.equals(type, 'popstate')) { + if (type === 'popstate') { listeners = this._popStateListeners; - } else if (StringWrapper.equals(type, 'hashchange')) { + } else if (type === 'hashchange') { listeners = this._hashChangeListeners; } diff --git a/modules/angular1_router/lib/facades.es5 b/modules/angular1_router/lib/facades.es5 index 5e15c0f871..dc883a556d 100644 --- a/modules/angular1_router/lib/facades.es5 +++ b/modules/angular1_router/lib/facades.es5 @@ -269,8 +269,6 @@ var StringWrapper = { replaceAllMapped: function(s, from, cb) { return s.replace(from, function(matches) { - // Remove offset & string from the result array - matches.splice(-2, 2); // The callback receives match, p1, ..., pn return cb.apply(null, matches); }); diff --git a/modules/benchmarks/src/old/compiler/selector_benchmark.ts b/modules/benchmarks/src/old/compiler/selector_benchmark.ts index 77c840741f..9a9c5d95cc 100644 --- a/modules/benchmarks/src/old/compiler/selector_benchmark.ts +++ b/modules/benchmarks/src/old/compiler/selector_benchmark.ts @@ -1,6 +1,6 @@ import {SelectorMatcher} from '@angular/compiler/src/selector'; import {CssSelector} from '@angular/compiler/src/selector'; -import {Math, StringWrapper} from '@angular/facade/lang'; +import {Math} from '@angular/facade/lang'; import {BrowserDomAdapter} from '@angular/platform-browser/src/browser/browser_adapter'; import {bindAction, getIntParameter} from '@angular/testing/src/benchmark_util'; diff --git a/modules/benchmarks/src/old/naive_infinite_scroll/common.ts b/modules/benchmarks/src/old/naive_infinite_scroll/common.ts index 3e6a5bd235..def2ab0f40 100644 --- a/modules/benchmarks/src/old/naive_infinite_scroll/common.ts +++ b/modules/benchmarks/src/old/naive_infinite_scroll/common.ts @@ -1,5 +1,4 @@ import {ListWrapper, Map, MapWrapper} from '@angular/facade/src/collection'; -import {StringWrapper} from '@angular/facade/src/lang'; import {Math} from '@angular/facade/src/math'; export var ITEMS = 1000; diff --git a/modules/benchmarks/src/old/naive_infinite_scroll/random_data.ts b/modules/benchmarks/src/old/naive_infinite_scroll/random_data.ts index be931f1e01..b17c5f70e3 100644 --- a/modules/benchmarks/src/old/naive_infinite_scroll/random_data.ts +++ b/modules/benchmarks/src/old/naive_infinite_scroll/random_data.ts @@ -1,5 +1,3 @@ -import {StringWrapper} from '@angular/facade/src/lang'; - import {AAT_STATUS_LIST, Account, Company, CustomDate, Offering, Opportunity, STATUS_LIST} from './common'; export function generateOfferings(count: number): Offering[] { diff --git a/modules/playground/src/web_workers/kitchen_sink/index_common.ts b/modules/playground/src/web_workers/kitchen_sink/index_common.ts index 7aafe6771a..ef982038f1 100644 --- a/modules/playground/src/web_workers/kitchen_sink/index_common.ts +++ b/modules/playground/src/web_workers/kitchen_sink/index_common.ts @@ -7,8 +7,6 @@ */ import {Component, Directive, ElementRef, Injectable, Renderer} from '@angular/core'; -import {StringWrapper} from '@angular/core/src/facade/lang'; - // A service available to the Injector, used by the HelloCmp component. @Injectable() @@ -57,6 +55,6 @@ export class HelloCmp { changeGreeting(): void { this.greeting = 'howdy'; } onKeyDown(event: any /** TODO #9100 */): void { - this.lastKey = StringWrapper.fromCharCode(event.keyCode); + this.lastKey = String.fromCharCode(event.keyCode); } }