diff --git a/modules/@angular/compiler/src/aot/compiler.ts b/modules/@angular/compiler/src/aot/compiler.ts index 5406ad9296..3446036e61 100644 --- a/modules/@angular/compiler/src/aot/compiler.ts +++ b/modules/@angular/compiler/src/aot/compiler.ts @@ -6,13 +6,10 @@ * found in the LICENSE file at https://angular.io/license */ -import {SchemaMetadata} from '@angular/core'; - import {AnimationCompiler} from '../animation/animation_compiler'; import {AnimationParser} from '../animation/animation_parser'; -import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompileNgModuleMetadata, CompilePipeMetadata, CompileProviderMetadata, CompileTypeSummary, componentFactoryName, createHostComponentMeta, identifierModuleUrl, identifierName} from '../compile_metadata'; -import {DirectiveNormalizer} from '../directive_normalizer'; -import {DirectiveWrapperCompileResult, DirectiveWrapperCompiler} from '../directive_wrapper_compiler'; +import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompileNgModuleMetadata, CompileProviderMetadata, componentFactoryName, createHostComponentMeta, identifierName} from '../compile_metadata'; +import {DirectiveWrapperCompiler} from '../directive_wrapper_compiler'; import {ListWrapper} from '../facade/collection'; import {Identifiers, createIdentifier, createIdentifierToken} from '../identifiers'; import {CompileMetadataResolver} from '../metadata_resolver'; @@ -22,12 +19,12 @@ import * as o from '../output/output_ast'; import {CompiledStylesheet, StyleCompiler} from '../style_compiler'; import {SummaryResolver} from '../summary_resolver'; import {TemplateParser} from '../template_parser/template_parser'; -import {ComponentFactoryDependency, ComponentViewDependency, DirectiveWrapperDependency, ViewCompileResult, ViewCompiler} from '../view_compiler/view_compiler'; +import {ViewCompiler} from '../view_compiler/view_compiler'; import {AotCompilerHost} from './compiler_host'; import {GeneratedFile} from './generated_file'; import {StaticSymbol} from './static_symbol'; -import {ResolvedStaticSymbol, StaticSymbolResolver} from './static_symbol_resolver'; +import {StaticSymbolResolver} from './static_symbol_resolver'; import {serializeSummaries} from './summary_serializer'; import {ngfactoryFilePath, splitTypescriptSuffix, summaryFileName} from './util'; diff --git a/modules/@angular/compiler/src/aot/compiler_host.ts b/modules/@angular/compiler/src/aot/compiler_host.ts index dbe52ab719..f37558dc7f 100644 --- a/modules/@angular/compiler/src/aot/compiler_host.ts +++ b/modules/@angular/compiler/src/aot/compiler_host.ts @@ -6,7 +6,6 @@ * found in the LICENSE file at https://angular.io/license */ -import {StaticSymbol} from './static_symbol'; import {StaticSymbolResolverHost} from './static_symbol_resolver'; import {AotSummaryResolverHost} from './summary_resolver'; diff --git a/modules/@angular/compiler/src/aot/static_reflector.ts b/modules/@angular/compiler/src/aot/static_reflector.ts index 4c073d4d1b..4858068fe1 100644 --- a/modules/@angular/compiler/src/aot/static_reflector.ts +++ b/modules/@angular/compiler/src/aot/static_reflector.ts @@ -10,8 +10,8 @@ import {Attribute, Component, ContentChild, ContentChildren, Directive, Host, Ho import {ReflectorReader} from '../private_import_core'; -import {StaticSymbol, StaticSymbolCache} from './static_symbol'; -import {ResolvedStaticSymbol, StaticSymbolResolver} from './static_symbol_resolver'; +import {StaticSymbol} from './static_symbol'; +import {StaticSymbolResolver} from './static_symbol_resolver'; const ANGULAR_IMPORT_LOCATIONS = { coreDecorators: '@angular/core/src/metadata', @@ -664,10 +664,6 @@ class PopulatedScope extends BindingScope { } } -function sameSymbol(a: StaticSymbol, b: StaticSymbol): boolean { - return a === b; -} - function shouldIgnore(value: any): boolean { return value && value.__symbolic == 'ignore'; } diff --git a/modules/@angular/compiler/src/aot/static_symbol_resolver.ts b/modules/@angular/compiler/src/aot/static_symbol_resolver.ts index 9b61292848..c6626a89f7 100644 --- a/modules/@angular/compiler/src/aot/static_symbol_resolver.ts +++ b/modules/@angular/compiler/src/aot/static_symbol_resolver.ts @@ -336,8 +336,6 @@ export class StaticSymbolResolver { } } -const UNDERSCORE_CHAR_CODE = 95; - // Remove extra underscore from escaped identifier. // See https://github.com/Microsoft/TypeScript/blob/master/src/compiler/utilities.ts export function unescapeIdentifier(identifier: string): string { diff --git a/modules/@angular/compiler/src/aot/summary_resolver.ts b/modules/@angular/compiler/src/aot/summary_resolver.ts index 98a9168a62..98a589860b 100644 --- a/modules/@angular/compiler/src/aot/summary_resolver.ts +++ b/modules/@angular/compiler/src/aot/summary_resolver.ts @@ -5,11 +5,10 @@ * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ -import {CompileSummaryKind, CompileTypeSummary} from '../compile_metadata'; + import {Summary, SummaryResolver} from '../summary_resolver'; import {StaticSymbol, StaticSymbolCache} from './static_symbol'; -import {ResolvedStaticSymbol} from './static_symbol_resolver'; import {deserializeSummaries} from './summary_serializer'; import {ngfactoryFilePath, stripNgFactory, summaryFileName} from './util'; diff --git a/modules/@angular/compiler/src/aot/summary_serializer.ts b/modules/@angular/compiler/src/aot/summary_serializer.ts index 09495fd786..b2481c696e 100644 --- a/modules/@angular/compiler/src/aot/summary_serializer.ts +++ b/modules/@angular/compiler/src/aot/summary_serializer.ts @@ -5,15 +5,13 @@ * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ -import {CompileDirectiveSummary, CompileIdentifierMetadata, CompileNgModuleSummary, CompilePipeSummary, CompileSummaryKind, CompileTypeMetadata, CompileTypeSummary, identifierModuleUrl, identifierName} from '../compile_metadata'; +import {CompileNgModuleSummary, CompileSummaryKind, CompileTypeSummary} from '../compile_metadata'; import {Summary, SummaryResolver} from '../summary_resolver'; import {ValueTransformer, visitValue} from '../util'; -import {GeneratedFile} from './generated_file'; import {StaticSymbol, StaticSymbolCache} from './static_symbol'; import {ResolvedStaticSymbol, StaticSymbolResolver} from './static_symbol_resolver'; -const STRIP_SRC_FILE_SUFFIXES = /(\.ts|\.d\.ts|\.js|\.jsx|\.tsx)$/; export function serializeSummaries( summaryResolver: SummaryResolver, symbolResolver: StaticSymbolResolver, diff --git a/modules/@angular/compiler/src/compiler_util/binding_util.ts b/modules/@angular/compiler/src/compiler_util/binding_util.ts index 31a056d628..a2e475303c 100644 --- a/modules/@angular/compiler/src/compiler_util/binding_util.ts +++ b/modules/@angular/compiler/src/compiler_util/binding_util.ts @@ -6,12 +6,9 @@ * found in the LICENSE file at https://angular.io/license */ -import {Identifiers, createIdentifier} from '../identifiers'; import {ClassBuilder} from '../output/class_builder'; import * as o from '../output/output_ast'; -import {ConvertPropertyBindingResult} from './expression_converter'; - export class CheckBindingField { constructor(public expression: o.ReadPropExpr, public bindingId: string) {} } diff --git a/modules/@angular/compiler/src/compiler_util/expression_converter.ts b/modules/@angular/compiler/src/compiler_util/expression_converter.ts index d5e0f7becd..b4b937e684 100644 --- a/modules/@angular/compiler/src/compiler_util/expression_converter.ts +++ b/modules/@angular/compiler/src/compiler_util/expression_converter.ts @@ -8,7 +8,7 @@ import * as cdAst from '../expression_parser/ast'; -import {isBlank, isPresent} from '../facade/lang'; +import {isBlank} from '../facade/lang'; import {Identifiers, createIdentifier} from '../identifiers'; import {ClassBuilder} from '../output/class_builder'; import * as o from '../output/output_ast'; @@ -338,7 +338,7 @@ class _AstToIrVisitor implements cdAst.AstVisitor { const receiver = this.visit(ast.receiver, _Mode.Expression); if (receiver === this._implicitReceiver) { const varExpr = this._getLocal(ast.name); - if (isPresent(varExpr)) { + if (varExpr) { result = varExpr.callFn(args); } } @@ -374,7 +374,7 @@ class _AstToIrVisitor implements cdAst.AstVisitor { const receiver: o.Expression = this.visit(ast.receiver, _Mode.Expression); if (receiver === this._implicitReceiver) { const varExpr = this._getLocal(ast.name); - if (isPresent(varExpr)) { + if (varExpr) { throw new Error('Cannot assign to a reference or variable!'); } } diff --git a/modules/@angular/compiler/src/compiler_util/render_util.ts b/modules/@angular/compiler/src/compiler_util/render_util.ts index c352898cbc..4a51ac6c19 100644 --- a/modules/@angular/compiler/src/compiler_util/render_util.ts +++ b/modules/@angular/compiler/src/compiler_util/render_util.ts @@ -7,7 +7,6 @@ */ import {SecurityContext} from '@angular/core'; -import {isPresent} from '../facade/lang'; import {Identifiers, createIdentifier} from '../identifiers'; import * as o from '../output/output_ast'; import {EMPTY_STATE as EMPTY_ANIMATION_STATE} from '../private_import_core'; diff --git a/modules/@angular/compiler/src/directive_normalizer.ts b/modules/@angular/compiler/src/directive_normalizer.ts index 99f936e3d5..c4ce31a716 100644 --- a/modules/@angular/compiler/src/directive_normalizer.ts +++ b/modules/@angular/compiler/src/directive_normalizer.ts @@ -8,7 +8,7 @@ import {ViewEncapsulation} from '@angular/core'; -import {CompileAnimationEntryMetadata, CompileDirectiveMetadata, CompileStylesheetMetadata, CompileTemplateMetadata, CompileTypeMetadata} from './compile_metadata'; +import {CompileAnimationEntryMetadata, CompileDirectiveMetadata, CompileStylesheetMetadata, CompileTemplateMetadata} from './compile_metadata'; import {CompilerConfig} from './config'; import {stringify} from './facade/lang'; import {CompilerInjectable} from './injectable'; diff --git a/modules/@angular/compiler/src/directive_resolver.ts b/modules/@angular/compiler/src/directive_resolver.ts index 2eacc7103f..8b874a5762 100644 --- a/modules/@angular/compiler/src/directive_resolver.ts +++ b/modules/@angular/compiler/src/directive_resolver.ts @@ -14,8 +14,6 @@ import {CompilerInjectable} from './injectable'; import {ReflectorReader, reflector} from './private_import_core'; import {splitAtColon} from './util'; - - /* * Resolve a `Type` for {@link Directive}. * diff --git a/modules/@angular/compiler/src/directive_wrapper_compiler.ts b/modules/@angular/compiler/src/directive_wrapper_compiler.ts index edce015bec..2c4f1b6f76 100644 --- a/modules/@angular/compiler/src/directive_wrapper_compiler.ts +++ b/modules/@angular/compiler/src/directive_wrapper_compiler.ts @@ -124,7 +124,6 @@ class DirectiveWrapperBuilder implements ClassBuilder { new o.ClassMethod('ngOnDestroy', [], this.destroyStmts), ]; - const fields: o.ClassField[] = [ new o.ClassField(EVENT_HANDLER_FIELD_NAME, o.FUNCTION_TYPE, [o.StmtModifier.Private]), new o.ClassField(CONTEXT_FIELD_NAME, o.importType(this.dirMeta.type)), diff --git a/modules/@angular/compiler/src/expression_parser/lexer.ts b/modules/@angular/compiler/src/expression_parser/lexer.ts index 1430869f87..952aa37214 100644 --- a/modules/@angular/compiler/src/expression_parser/lexer.ts +++ b/modules/@angular/compiler/src/expression_parser/lexer.ts @@ -7,7 +7,7 @@ */ import * as chars from '../chars'; -import {NumberWrapper, isPresent} from '../facade/lang'; +import {NumberWrapper} from '../facade/lang'; import {CompilerInjectable} from '../injectable'; export enum TokenType { @@ -241,7 +241,7 @@ class _Scanner { this.advance(); str += two; } - if (isPresent(threeCode) && this.peek == threeCode) { + if (threeCode != null && this.peek == threeCode) { this.advance(); str += three; } diff --git a/modules/@angular/compiler/src/identifiers.ts b/modules/@angular/compiler/src/identifiers.ts index 5287259ef5..c558841477 100644 --- a/modules/@angular/compiler/src/identifiers.ts +++ b/modules/@angular/compiler/src/identifiers.ts @@ -6,10 +6,9 @@ * found in the LICENSE file at https://angular.io/license */ -import {ANALYZE_FOR_ENTRY_COMPONENTS, AnimationTransitionEvent, ChangeDetectionStrategy, ChangeDetectorRef, ComponentFactory, ComponentFactoryResolver, ComponentRef, ElementRef, Injector, LOCALE_ID, NgModuleFactory, QueryList, RenderComponentType, Renderer, SecurityContext, SimpleChange, TRANSLATIONS_FORMAT, TemplateRef, ViewContainerRef, ViewEncapsulation} from '@angular/core'; +import {ANALYZE_FOR_ENTRY_COMPONENTS, ChangeDetectionStrategy, ChangeDetectorRef, ComponentFactory, ComponentFactoryResolver, ComponentRef, ElementRef, Injector, LOCALE_ID, NgModuleFactory, QueryList, RenderComponentType, Renderer, SecurityContext, SimpleChange, TRANSLATIONS_FORMAT, TemplateRef, ViewContainerRef, ViewEncapsulation} from '@angular/core'; -import {StaticSymbol} from './aot/static_symbol'; -import {CompileIdentifierMetadata, CompileTokenMetadata, identifierModuleUrl, identifierName} from './compile_metadata'; +import {CompileIdentifierMetadata, CompileTokenMetadata} from './compile_metadata'; import {AnimationGroupPlayer, AnimationKeyframe, AnimationSequencePlayer, AnimationStyles, AnimationTransition, AppView, ChangeDetectorStatus, CodegenComponentFactoryResolver, ComponentRef_, DebugAppView, DebugContext, NgModuleInjector, NoOpAnimationPlayer, StaticNodeDebugInfo, TemplateRef_, ValueUnwrapper, ViewContainer, ViewType, balanceAnimationKeyframes, clearStyles, collectAndResolveStyles, devModeEqual, prepareFinalAnimationStyles, reflector, registerModuleFactory, renderStyles, view_utils} from './private_import_core'; const APP_VIEW_MODULE_URL = assetUrl('core', 'linker/view'); diff --git a/modules/@angular/compiler/src/jit/compiler.ts b/modules/@angular/compiler/src/jit/compiler.ts index 4a7b54f5ad..a645977bbf 100644 --- a/modules/@angular/compiler/src/jit/compiler.ts +++ b/modules/@angular/compiler/src/jit/compiler.ts @@ -6,13 +6,12 @@ * found in the LICENSE file at https://angular.io/license */ -import {Compiler, ComponentFactory, Injector, ModuleWithComponentFactories, NgModuleFactory, SchemaMetadata, Type} from '@angular/core'; +import {Compiler, ComponentFactory, Injector, ModuleWithComponentFactories, NgModuleFactory, Type} from '@angular/core'; import {AnimationCompiler} from '../animation/animation_compiler'; import {AnimationParser} from '../animation/animation_parser'; -import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompileNgModuleMetadata, CompilePipeMetadata, ProviderMeta, ProxyClass, createHostComponentMeta, identifierName} from '../compile_metadata'; +import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompileNgModuleMetadata, ProviderMeta, ProxyClass, createHostComponentMeta, identifierName} from '../compile_metadata'; import {CompilerConfig} from '../config'; -import {DirectiveNormalizer} from '../directive_normalizer'; import {DirectiveWrapperCompiler} from '../directive_wrapper_compiler'; import {stringify} from '../facade/lang'; import {CompilerInjectable} from '../injectable'; @@ -25,7 +24,7 @@ import {view_utils} from '../private_import_core'; import {CompiledStylesheet, StyleCompiler} from '../style_compiler'; import {TemplateParser} from '../template_parser/template_parser'; import {SyncAsyncResult} from '../util'; -import {ComponentFactoryDependency, ComponentViewDependency, DirectiveWrapperDependency, ViewCompiler} from '../view_compiler/view_compiler'; +import {ViewCompiler} from '../view_compiler/view_compiler'; @@ -243,25 +242,6 @@ export class JitCompiler implements Compiler { return compiledTemplate; } - private _assertComponentKnown(compType: any, isHost: boolean): CompiledTemplate { - const compiledTemplate = isHost ? this._compiledHostTemplateCache.get(compType) : - this._compiledTemplateCache.get(compType); - if (!compiledTemplate) { - throw new Error( - `Illegal state: Compiled view for component ${stringify(compType)} (host: ${isHost}) does not exist!`); - } - return compiledTemplate; - } - - private _assertDirectiveWrapper(dirType: any): Type { - const dirWrapper = this._compiledDirectiveWrapperCache.get(dirType); - if (!dirWrapper) { - throw new Error( - `Illegal state: Directive wrapper for ${stringify(dirType)} has not been compiled!`); - } - return dirWrapper; - } - private _compileDirectiveWrapper( dirMeta: CompileDirectiveMetadata, moduleMeta: CompileNgModuleMetadata): void { const compileResult = this._directiveWrapperCompiler.compile(dirMeta); @@ -346,9 +326,7 @@ class CompiledTemplate { constructor( public isHost: boolean, public compType: CompileIdentifierMetadata, public compMeta: CompileDirectiveMetadata, public ngModule: CompileNgModuleMetadata, - public directives: CompileIdentifierMetadata[]) { - const self = this; - } + public directives: CompileIdentifierMetadata[]) {} compiled(viewClass: Function) { this._viewClass = viewClass; diff --git a/modules/@angular/compiler/src/ml_parser/parser.ts b/modules/@angular/compiler/src/ml_parser/parser.ts index 0658ca35ef..2c1473daff 100644 --- a/modules/@angular/compiler/src/ml_parser/parser.ts +++ b/modules/@angular/compiler/src/ml_parser/parser.ts @@ -283,7 +283,7 @@ class _TreeBuilder { const tagDef = this.getTagDefinition(el.name); const {parent, container} = this._getParentElementSkippingContainers(); - if (isPresent(parent) && tagDef.requireExtraParent(parent.name)) { + if (parent && tagDef.requireExtraParent(parent.name)) { const newParent = new html.Element( tagDef.parentToAdd, [], [], el.sourceSpan, el.startSourceSpan, el.endSourceSpan); this._insertBeforeContainer(parent, container, newParent); diff --git a/modules/@angular/compiler/src/ng_module_compiler.ts b/modules/@angular/compiler/src/ng_module_compiler.ts index bcb826934b..a917c9df81 100644 --- a/modules/@angular/compiler/src/ng_module_compiler.ts +++ b/modules/@angular/compiler/src/ng_module_compiler.ts @@ -9,7 +9,7 @@ import {CompileDiDependencyMetadata, CompileIdentifierMetadata, CompileNgModuleMetadata, CompileProviderMetadata, CompileTokenMetadata, identifierModuleUrl, identifierName, tokenName, tokenReference} from './compile_metadata'; import {createDiTokenExpression} from './compiler_util/identifier_util'; import {isPresent} from './facade/lang'; -import {Identifiers, createIdentifier, createIdentifierToken, resolveIdentifier} from './identifiers'; +import {Identifiers, createIdentifier, resolveIdentifier} from './identifiers'; import {CompilerInjectable} from './injectable'; import {ClassBuilder, createClassStmt} from './output/class_builder'; import * as o from './output/output_ast'; diff --git a/modules/@angular/compiler/src/ng_module_resolver.ts b/modules/@angular/compiler/src/ng_module_resolver.ts index e29eb78f85..581b4110ad 100644 --- a/modules/@angular/compiler/src/ng_module_resolver.ts +++ b/modules/@angular/compiler/src/ng_module_resolver.ts @@ -9,7 +9,7 @@ import {NgModule, Type} from '@angular/core'; import {ListWrapper} from './facade/collection'; -import {isPresent, stringify} from './facade/lang'; +import {stringify} from './facade/lang'; import {CompilerInjectable} from './injectable'; import {ReflectorReader, reflector} from './private_import_core'; @@ -30,7 +30,7 @@ export class NgModuleResolver { const ngModuleMeta: NgModule = ListWrapper.findLast(this._reflector.annotations(type), _isNgModuleMetadata); - if (isPresent(ngModuleMeta)) { + if (ngModuleMeta) { return ngModuleMeta; } else { if (throwIfNotFound) { diff --git a/modules/@angular/compiler/src/output/js_emitter.ts b/modules/@angular/compiler/src/output/js_emitter.ts index 09d28d8d34..4fdcaa9119 100644 --- a/modules/@angular/compiler/src/output/js_emitter.ts +++ b/modules/@angular/compiler/src/output/js_emitter.ts @@ -9,7 +9,7 @@ import {StaticSymbol} from '../aot/static_symbol'; import {CompileIdentifierMetadata} from '../compile_metadata'; -import {isBlank, isPresent} from '../facade/lang'; +import {isBlank} from '../facade/lang'; import {EmitterVisitorContext, OutputEmitter} from './abstract_emitter'; import {AbstractJsEmitterVisitor} from './abstract_js_emitter'; diff --git a/modules/@angular/compiler/src/output/value_util.ts b/modules/@angular/compiler/src/output/value_util.ts index 6862eb1d0f..c60677aac2 100644 --- a/modules/@angular/compiler/src/output/value_util.ts +++ b/modules/@angular/compiler/src/output/value_util.ts @@ -7,7 +7,6 @@ */ -import {CompileIdentifierMetadata} from '../compile_metadata'; import {ValueTransformer, visitValue} from '../util'; import * as o from './output_ast'; diff --git a/modules/@angular/compiler/src/pipe_resolver.ts b/modules/@angular/compiler/src/pipe_resolver.ts index 94de46ee54..2a8cb7e6ee 100644 --- a/modules/@angular/compiler/src/pipe_resolver.ts +++ b/modules/@angular/compiler/src/pipe_resolver.ts @@ -9,7 +9,7 @@ import {Pipe, Type, resolveForwardRef} from '@angular/core'; import {ListWrapper} from './facade/collection'; -import {isPresent, stringify} from './facade/lang'; +import {stringify} from './facade/lang'; import {CompilerInjectable} from './injectable'; import {ReflectorReader, reflector} from './private_import_core'; @@ -38,9 +38,9 @@ export class PipeResolver { */ resolve(type: Type, throwIfNotFound = true): Pipe { const metas = this._reflector.annotations(resolveForwardRef(type)); - if (isPresent(metas)) { + if (metas) { const annotation = ListWrapper.findLast(metas, _isPipeMetadata); - if (isPresent(annotation)) { + if (annotation) { return annotation; } } diff --git a/modules/@angular/compiler/src/provider_analyzer.ts b/modules/@angular/compiler/src/provider_analyzer.ts index d754f86a22..df3248956b 100644 --- a/modules/@angular/compiler/src/provider_analyzer.ts +++ b/modules/@angular/compiler/src/provider_analyzer.ts @@ -9,7 +9,7 @@ import {CompileDiDependencyMetadata, CompileDirectiveMetadata, CompileDirectiveSummary, CompileNgModuleMetadata, CompileProviderMetadata, CompileQueryMetadata, CompileTokenMetadata, CompileTypeMetadata, tokenName, tokenReference} from './compile_metadata'; import {isBlank, isPresent} from './facade/lang'; -import {Identifiers, createIdentifierToken, resolveIdentifier} from './identifiers'; +import {Identifiers, resolveIdentifier} from './identifiers'; import {ParseError, ParseSourceSpan} from './parse_util'; import {AttrAst, DirectiveAst, ProviderAst, ProviderAstType, ReferenceAst} from './template_parser/template_ast'; @@ -114,7 +114,7 @@ export class ProviderElementContext { let queries: CompileQueryMetadata[]; while (currentEl !== null) { queries = currentEl._contentQueries.get(tokenReference(token)); - if (isPresent(queries)) { + if (queries) { result.push(...queries.filter((query) => query.descendants || distance <= 1)); } if (currentEl._directiveAsts.length > 0) { @@ -123,7 +123,7 @@ export class ProviderElementContext { currentEl = currentEl._parent; } queries = this.viewContext.viewQueries.get(tokenReference(token)); - if (isPresent(queries)) { + if (queries) { result.push(...queries); } return result; @@ -143,7 +143,7 @@ export class ProviderElementContext { return null; } let transformedProviderAst = this._transformedProviders.get(tokenReference(token)); - if (isPresent(transformedProviderAst)) { + if (transformedProviderAst) { return transformedProviderAst; } if (isPresent(this._seenProviders.get(tokenReference(token)))) { @@ -165,11 +165,11 @@ export class ProviderElementContext { transformedUseExisting = null; transformedUseValue = existingDiDep.value; } - } else if (isPresent(provider.useFactory)) { + } else if (provider.useFactory) { const deps = provider.deps || provider.useFactory.diDeps; transformedDeps = deps.map((dep) => this._getDependency(resolvedProvider.providerType, dep, eager)); - } else if (isPresent(provider.useClass)) { + } else if (provider.useClass) { const deps = provider.deps || provider.useClass.diDeps; transformedDeps = deps.map((dep) => this._getDependency(resolvedProvider.providerType, dep, eager)); @@ -235,7 +235,7 @@ export class ProviderElementContext { } } else { // check parent elements - while (!result && isPresent(currElement._parent)) { + while (!result && currElement._parent) { const prevElement = currElement; currElement = currElement._parent; if (prevElement._isViewRoot) { @@ -301,7 +301,7 @@ export class NgModuleProviderAnalyzer { return null; } let transformedProviderAst = this._transformedProviders.get(tokenReference(token)); - if (isPresent(transformedProviderAst)) { + if (transformedProviderAst) { return transformedProviderAst; } if (isPresent(this._seenProviders.get(tokenReference(token)))) { @@ -324,11 +324,11 @@ export class NgModuleProviderAnalyzer { transformedUseExisting = null; transformedUseValue = existingDiDep.value; } - } else if (isPresent(provider.useFactory)) { + } else if (provider.useFactory) { const deps = provider.deps || provider.useFactory.diDeps; transformedDeps = deps.map((dep) => this._getDependency(dep, eager, resolvedProvider.sourceSpan)); - } else if (isPresent(provider.useClass)) { + } else if (provider.useClass) { const deps = provider.deps || provider.useClass.diDeps; transformedDeps = deps.map((dep) => this._getDependency(dep, eager, resolvedProvider.sourceSpan)); @@ -454,7 +454,7 @@ function _resolveProviders( function _getViewQueries(component: CompileDirectiveMetadata): Map { const viewQueries = new Map(); - if (isPresent(component.viewQueries)) { + if (component.viewQueries) { component.viewQueries.forEach((query) => _addQueryToTokenMap(viewQueries, query)); } return viewQueries; @@ -464,7 +464,7 @@ function _getContentQueries(directives: CompileDirectiveSummary[]): Map { const contentQueries = new Map(); directives.forEach(directive => { - if (isPresent(directive.queries)) { + if (directive.queries) { directive.queries.forEach((query) => _addQueryToTokenMap(contentQueries, query)); } }); diff --git a/modules/@angular/compiler/src/template_parser/binding_parser.ts b/modules/@angular/compiler/src/template_parser/binding_parser.ts index 7b51ac387f..9756c19ccb 100644 --- a/modules/@angular/compiler/src/template_parser/binding_parser.ts +++ b/modules/@angular/compiler/src/template_parser/binding_parser.ts @@ -11,7 +11,6 @@ import {SecurityContext} from '@angular/core'; import {CompileDirectiveSummary, CompilePipeSummary} from '../compile_metadata'; import {ASTWithSource, BindingPipe, EmptyExpr, ParserError, RecursiveAstVisitor, TemplateBinding} from '../expression_parser/ast'; import {Parser} from '../expression_parser/parser'; -import {isPresent} from '../facade/lang'; import {InterpolationConfig} from '../ml_parser/interpolation_config'; import {mergeNsAndName} from '../ml_parser/tags'; import {ParseError, ParseErrorLevel, ParseSourceSpan} from '../parse_util'; @@ -111,14 +110,14 @@ export class BindingParser { } parseInlineTemplateBinding( - name: string, prefixToken: string, value: string, sourceSpan: ParseSourceSpan, + prefixToken: string, value: string, sourceSpan: ParseSourceSpan, targetMatchableAttrs: string[][], targetProps: BoundProperty[], targetVars: VariableAst[]) { const bindings = this._parseTemplateBindings(prefixToken, value, sourceSpan); for (let i = 0; i < bindings.length; i++) { const binding = bindings[i]; if (binding.keyIsVar) { targetVars.push(new VariableAst(binding.key, binding.name, sourceSpan)); - } else if (isPresent(binding.expression)) { + } else if (binding.expression) { this._parsePropertyAst( binding.key, binding.expression, sourceSpan, targetMatchableAttrs, targetProps); } else { @@ -136,7 +135,7 @@ export class BindingParser { const bindingsResult = this._exprParser.parseTemplateBindings(prefixToken, value, sourceInfo); this._reportExpressionParserErrors(bindingsResult.errors, sourceSpan); bindingsResult.templateBindings.forEach((binding) => { - if (isPresent(binding.expression)) { + if (binding.expression) { this._checkPipes(binding.expression, sourceSpan); } }); @@ -193,7 +192,7 @@ export class BindingParser { name: string, value: string, sourceSpan: ParseSourceSpan, targetMatchableAttrs: string[][], targetProps: BoundProperty[]): boolean { const expr = this.parseInterpolation(value, sourceSpan); - if (isPresent(expr)) { + if (expr) { this._parsePropertyAst(name, expr, sourceSpan, targetMatchableAttrs, targetProps); return true; } @@ -374,7 +373,7 @@ export class BindingParser { } private _checkPipes(ast: ASTWithSource, sourceSpan: ParseSourceSpan) { - if (isPresent(ast)) { + if (ast) { const collector = new PipeCollector(); ast.visit(collector); collector.pipes.forEach((ast, pipeName) => { diff --git a/modules/@angular/compiler/src/template_parser/template_parser.ts b/modules/@angular/compiler/src/template_parser/template_parser.ts index 78e8f3f1f2..493b371bd6 100644 --- a/modules/@angular/compiler/src/template_parser/template_parser.ts +++ b/modules/@angular/compiler/src/template_parser/template_parser.ts @@ -288,7 +288,7 @@ class TemplateParseVisitor implements html.Visitor { } hasInlineTemplates = true; this._bindingParser.parseInlineTemplateBinding( - attr.name, prefixToken, templateBindingsSource, attr.sourceSpan, templateMatchableAttrs, + prefixToken, templateBindingsSource, attr.sourceSpan, templateMatchableAttrs, templateElementOrDirectiveProps, templateElementVars); } @@ -309,9 +309,11 @@ class TemplateParseVisitor implements html.Visitor { const elementProps: BoundElementPropertyAst[] = this._createElementPropertyAsts(element.name, elementOrDirectiveProps, directiveAsts); const isViewRoot = parent.isTemplateElement || hasInlineTemplates; + const providerContext = new ProviderElementContext( this.providerViewContext, parent.providerContext, isViewRoot, directiveAsts, attrs, references, element.sourceSpan); + const children = html.visitAll( preparsedElement.nonBindable ? NON_BINDABLE_VISITOR : this, element.children, ElementContext.create( diff --git a/modules/@angular/compiler/src/view_compiler/compile_element.ts b/modules/@angular/compiler/src/view_compiler/compile_element.ts index a29dd540fe..7e6249d2fe 100644 --- a/modules/@angular/compiler/src/view_compiler/compile_element.ts +++ b/modules/@angular/compiler/src/view_compiler/compile_element.ts @@ -7,9 +7,9 @@ */ -import {CompileDiDependencyMetadata, CompileDirectiveSummary, CompileIdentifierMetadata, CompileProviderMetadata, CompileQueryMetadata, CompileTokenMetadata, identifierName, tokenName, tokenReference} from '../compile_metadata'; +import {CompileDiDependencyMetadata, CompileDirectiveSummary, CompileProviderMetadata, CompileQueryMetadata, CompileTokenMetadata, tokenName, tokenReference} from '../compile_metadata'; import {createDiTokenExpression} from '../compiler_util/identifier_util'; -import {DirectiveWrapperCompiler, DirectiveWrapperExpressions} from '../directive_wrapper_compiler'; +import {DirectiveWrapperExpressions} from '../directive_wrapper_compiler'; import {isPresent} from '../facade/lang'; import {Identifiers, createIdentifier, createIdentifierToken, identifierToken, resolveIdentifier} from '../identifiers'; import * as o from '../output/output_ast'; @@ -19,7 +19,7 @@ import {ProviderAst, ProviderAstType, ReferenceAst, TemplateAst} from '../templa import {CompileMethod} from './compile_method'; import {CompileQuery, addQueryToTokenMap, createQueryList} from './compile_query'; import {CompileView, CompileViewRootNode} from './compile_view'; -import {InjectMethodVars, ViewProperties} from './constants'; +import {InjectMethodVars} from './constants'; import {ComponentFactoryDependency, DirectiveWrapperDependency} from './deps'; import {getPropertyInView, injectFromViewParentInjector} from './util'; @@ -194,7 +194,7 @@ export class CompileElement extends CompileNode { const propName = `_${tokenName(resolvedProvider.token)}_${this.nodeIndex}_${this.instances.size}`; const instance = createProviderProperty( - propName, resolvedProvider, providerValueExpressions, resolvedProvider.multiProvider, + propName, providerValueExpressions, resolvedProvider.multiProvider, resolvedProvider.eager, this); if (isDirectiveWrapper) { this.directiveWrapperInstance.set(tokenReference(resolvedProvider.token), instance); @@ -288,7 +288,7 @@ export class CompileElement extends CompileNode { CompileQuery { const propName = `_query_${tokenName(queryMeta.selectors[0])}_${this.nodeIndex}_${this._queryCount++}`; - const queryList = createQueryList(queryMeta, directiveInstance, propName, this.view); + const queryList = createQueryList(propName, this.view); const query = new CompileQuery(queryMeta, queryList, directiveInstance, this.view); addQueryToTokenMap(this._queries, query); return query; @@ -368,8 +368,8 @@ function createInjectInternalCondition( } function createProviderProperty( - propName: string, provider: ProviderAst, providerValueExpressions: o.Expression[], - isMulti: boolean, isEager: boolean, compileElement: CompileElement): o.Expression { + propName: string, providerValueExpressions: o.Expression[], isMulti: boolean, isEager: boolean, + compileElement: CompileElement): o.Expression { const view = compileElement.view; let resolvedProviderValueExpr: o.Expression; let type: o.Type; diff --git a/modules/@angular/compiler/src/view_compiler/compile_method.ts b/modules/@angular/compiler/src/view_compiler/compile_method.ts index cafb869e77..a6cdf3bf8f 100644 --- a/modules/@angular/compiler/src/view_compiler/compile_method.ts +++ b/modules/@angular/compiler/src/view_compiler/compile_method.ts @@ -6,7 +6,6 @@ * found in the LICENSE file at https://angular.io/license */ -import {isPresent} from '../facade/lang'; import * as o from '../output/output_ast'; import {TemplateAst} from '../template_parser/template_ast'; @@ -34,7 +33,7 @@ export class CompileMethod { if (this._newState.nodeIndex !== this._currState.nodeIndex || this._newState.sourceAst !== this._currState.sourceAst) { const expr = this._updateDebugContext(this._newState); - if (isPresent(expr)) { + if (expr) { this._bodyStatements.push(expr.toStmt()); } } @@ -43,13 +42,12 @@ export class CompileMethod { private _updateDebugContext(newState: _DebugState): o.Expression { this._currState = this._newState = newState; if (this._debugEnabled) { - const sourceLocation = - isPresent(newState.sourceAst) ? newState.sourceAst.sourceSpan.start : null; + const sourceLocation = newState.sourceAst ? newState.sourceAst.sourceSpan.start : null; return o.THIS_EXPR.callMethod('debug', [ o.literal(newState.nodeIndex), - isPresent(sourceLocation) ? o.literal(sourceLocation.line) : o.NULL_EXPR, - isPresent(sourceLocation) ? o.literal(sourceLocation.col) : o.NULL_EXPR + sourceLocation ? o.literal(sourceLocation.line) : o.NULL_EXPR, + sourceLocation ? o.literal(sourceLocation.col) : o.NULL_EXPR ]); } else { return null; diff --git a/modules/@angular/compiler/src/view_compiler/compile_query.ts b/modules/@angular/compiler/src/view_compiler/compile_query.ts index db53a53355..21b9708a58 100644 --- a/modules/@angular/compiler/src/view_compiler/compile_query.ts +++ b/modules/@angular/compiler/src/view_compiler/compile_query.ts @@ -8,7 +8,6 @@ import {CompileQueryMetadata, tokenReference} from '../compile_metadata'; import {ListWrapper} from '../facade/collection'; -import {isPresent} from '../facade/lang'; import {Identifiers, createIdentifier} from '../identifiers'; import * as o from '../output/output_ast'; @@ -33,7 +32,7 @@ export class CompileQuery { addValue(value: o.Expression, view: CompileView) { let currentView = view; const elPath: CompileElement[] = []; - while (isPresent(currentView) && currentView !== this.view) { + while (currentView && currentView !== this.view) { const parentEl = currentView.declarationElement; elPath.unshift(parentEl); currentView = parentEl.view; @@ -67,7 +66,7 @@ export class CompileQuery { generateStatements(targetStaticMethod: CompileMethod, targetDynamicMethod: CompileMethod) { const values = createQueryValues(this._values); const updateStmts = [this.queryList.callMethod('reset', [o.literalArr(values)]).toStmt()]; - if (isPresent(this.ownerDirectiveExpression)) { + if (this.ownerDirectiveExpression) { const valueExpr = this.meta.first ? this.queryList.prop('first') : this.queryList; updateStmts.push( this.ownerDirectiveExpression.prop(this.meta.propertyName).set(valueExpr).toStmt()); @@ -110,9 +109,7 @@ function mapNestedViews( ]); } -export function createQueryList( - query: CompileQueryMetadata, directiveInstance: o.Expression, propertyName: string, - compileView: CompileView): o.Expression { +export function createQueryList(propertyName: string, compileView: CompileView): o.Expression { compileView.fields.push(new o.ClassField( propertyName, o.importType(createIdentifier(Identifiers.QueryList), [o.DYNAMIC_TYPE]))); const expr = o.THIS_EXPR.prop(propertyName); diff --git a/modules/@angular/compiler/src/view_compiler/compile_view.ts b/modules/@angular/compiler/src/view_compiler/compile_view.ts index cc98aacd31..a9a920cabd 100644 --- a/modules/@angular/compiler/src/view_compiler/compile_view.ts +++ b/modules/@angular/compiler/src/view_compiler/compile_view.ts @@ -7,11 +7,10 @@ */ import {AnimationEntryCompileResult} from '../animation/animation_compiler'; -import {CompileDirectiveMetadata, CompileIdentifierMetadata, CompilePipeSummary, tokenName, viewClassName} from '../compile_metadata'; +import {CompileDirectiveMetadata, CompilePipeSummary, tokenName, viewClassName} from '../compile_metadata'; import {EventHandlerVars, NameResolver} from '../compiler_util/expression_converter'; import {CompilerConfig} from '../config'; import {isPresent} from '../facade/lang'; -import {Identifiers, createIdentifier} from '../identifiers'; import * as o from '../output/output_ast'; import {ViewType} from '../private_import_core'; @@ -118,7 +117,7 @@ export class CompileView implements NameResolver { const directiveInstance = o.THIS_EXPR.prop('context'); this.component.viewQueries.forEach((queryMeta, queryIndex) => { const propName = `_viewQuery_${tokenName(queryMeta.selectors[0])}_${queryIndex}`; - const queryList = createQueryList(queryMeta, directiveInstance, propName, this); + const queryList = createQueryList(propName, this); const query = new CompileQuery(queryMeta, queryList, directiveInstance, this); addQueryToTokenMap(viewQueries, query); }); diff --git a/modules/@angular/compiler/src/view_compiler/constants.ts b/modules/@angular/compiler/src/view_compiler/constants.ts index 78f4688b48..684925d329 100644 --- a/modules/@angular/compiler/src/view_compiler/constants.ts +++ b/modules/@angular/compiler/src/view_compiler/constants.ts @@ -11,7 +11,7 @@ import {ChangeDetectionStrategy, ViewEncapsulation} from '@angular/core'; import {createEnumExpression} from '../compiler_util/identifier_util'; import {Identifiers} from '../identifiers'; import * as o from '../output/output_ast'; -import {ChangeDetectorStatus, ViewType} from '../private_import_core'; +import {ViewType} from '../private_import_core'; export class ViewTypeEnum { static fromValue(value: ViewType): o.Expression { @@ -25,12 +25,6 @@ export class ViewEncapsulationEnum { } } -export class ChangeDetectionStrategyEnum { - static fromValue(value: ChangeDetectionStrategy): o.Expression { - return createEnumExpression(Identifiers.ChangeDetectionStrategy, value); - } -} - export class ChangeDetectorStatusEnum { static fromValue(value: ChangeDetectorStatusEnum): o.Expression { return createEnumExpression(Identifiers.ChangeDetectorStatus, value); diff --git a/modules/@angular/compiler/src/view_compiler/deps.ts b/modules/@angular/compiler/src/view_compiler/deps.ts index 0f9fa388dc..8388b96c7c 100644 --- a/modules/@angular/compiler/src/view_compiler/deps.ts +++ b/modules/@angular/compiler/src/view_compiler/deps.ts @@ -6,11 +6,9 @@ * found in the LICENSE file at https://angular.io/license */ -import {CompileIdentifierMetadata} from '../compile_metadata'; - /** * This is currently not read, but will probably be used in the future. - * We keep it as we already pass it through all the rigth places... + * We keep it as we already pass it through all the right places... */ export class ComponentViewDependency { constructor(public compType: any) {} @@ -18,7 +16,7 @@ export class ComponentViewDependency { /** * This is currently not read, but will probably be used in the future. - * We keep it as we already pass it through all the rigth places... + * We keep it as we already pass it through all the right places... */ export class ComponentFactoryDependency { constructor(public compType: any) {} @@ -26,7 +24,7 @@ export class ComponentFactoryDependency { /** * This is currently not read, but will probably be used in the future. - * We keep it as we already pass it through all the rigth places... + * We keep it as we already pass it through all the right places... */ export class DirectiveWrapperDependency { constructor(public dirType: any) {} diff --git a/modules/@angular/compiler/src/view_compiler/event_binder.ts b/modules/@angular/compiler/src/view_compiler/event_binder.ts index 459f64c831..57ffd9584d 100644 --- a/modules/@angular/compiler/src/view_compiler/event_binder.ts +++ b/modules/@angular/compiler/src/view_compiler/event_binder.ts @@ -15,7 +15,6 @@ import {BoundEventAst, DirectiveAst} from '../template_parser/template_ast'; import {CompileElement} from './compile_element'; import {CompileMethod} from './compile_method'; -import {ViewProperties} from './constants'; import {getHandleEventMethodName} from './util'; export function bindOutputs( diff --git a/modules/@angular/compiler/src/view_compiler/property_binder.ts b/modules/@angular/compiler/src/view_compiler/property_binder.ts index c67e41c699..bbe34509fb 100644 --- a/modules/@angular/compiler/src/view_compiler/property_binder.ts +++ b/modules/@angular/compiler/src/view_compiler/property_binder.ts @@ -9,7 +9,7 @@ import {SecurityContext} from '@angular/core'; import {createCheckBindingField} from '../compiler_util/binding_util'; -import {ConvertPropertyBindingResult, convertPropertyBinding} from '../compiler_util/expression_converter'; +import {convertPropertyBinding} from '../compiler_util/expression_converter'; import {createEnumExpression} from '../compiler_util/identifier_util'; import {createCheckAnimationBindingStmts, createCheckRenderBindingStmt} from '../compiler_util/render_util'; import {DirectiveWrapperExpressions} from '../directive_wrapper_compiler'; diff --git a/modules/@angular/compiler/src/view_compiler/query_binder.ts b/modules/@angular/compiler/src/view_compiler/query_binder.ts index 9f2ddb31fb..6d2e64008b 100644 --- a/modules/@angular/compiler/src/view_compiler/query_binder.ts +++ b/modules/@angular/compiler/src/view_compiler/query_binder.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -import {CompileQueryMetadata, CompileTokenMetadata, tokenReference} from '../compile_metadata'; +import {CompileTokenMetadata, tokenReference} from '../compile_metadata'; import * as o from '../output/output_ast'; import {CompileElement} from './compile_element'; @@ -17,16 +17,18 @@ import {CompileQuery} from './compile_query'; // as we create embedded views before the