feat: add support for TS 2.3

This commit is contained in:
Victor Berchet 2017-04-14 17:13:10 -07:00 committed by Tobias Bosch
parent 3c8a61e40c
commit 014594fe8f
4 changed files with 17 additions and 14 deletions

View File

@ -194,7 +194,7 @@ export class TypeScriptServiceHost implements LanguageServiceHost {
let sourceFile = this.getSourceFile(fileName); let sourceFile = this.getSourceFile(fileName);
if (sourceFile) { if (sourceFile) {
this.context = sourceFile.path; this.context = (sourceFile as any).path || sourceFile.fileName;
ts.forEachChild(sourceFile, visit); ts.forEachChild(sourceFile, visit);
} }
return result.length ? result : undefined; return result.length ? result : undefined;

View File

@ -10,6 +10,18 @@ import {Injectable, RenderComponentType, RendererType2, Type, ɵstringify as str
import {RenderStore} from './render_store'; import {RenderStore} from './render_store';
/**
* @experimental WebWorker support in Angular is currently experimental.
*/
export const enum SerializerTypes {
// RendererType2
RENDERER_TYPE_2,
// Primitive types
PRIMITIVE,
// An object stored in a RenderStore
RENDER_STORE_OBJECT,
}
/** /**
* Any type that does not need to be serialized (string, number, boolean) * Any type that does not need to be serialized (string, number, boolean)
* *
@ -25,18 +37,6 @@ export class LocationType {
public origin: string) {} public origin: string) {}
} }
/**
* @experimental WebWorker support in Angular is currently experimental.
*/
export const enum SerializerTypes {
// RendererType2
RENDERER_TYPE_2,
// Primitive types
PRIMITIVE,
// An object stored in a RenderStore
RENDER_STORE_OBJECT,
}
@Injectable() @Injectable()
export class Serializer { export class Serializer {
constructor(private _renderStore: RenderStore) {} constructor(private _renderStore: RenderStore) {}

View File

@ -51,7 +51,7 @@ export class Symbols {
// in the parent chain). This doesn't damage the node as the binder unconditionally // in the parent chain). This doesn't damage the node as the binder unconditionally
// sets the parent. // sets the parent.
externalReference.expression.parent = externalReference; externalReference.expression.parent = externalReference;
externalReference.parent = this.sourceFile; externalReference.parent = this.sourceFile as any;
} }
const from = stripQuotes(externalReference.expression.getText()); const from = stripQuotes(externalReference.expression.getText());
symbols.set(importEqualsDeclaration.name.text, {__symbolic: 'reference', module: from}); symbols.set(importEqualsDeclaration.name.text, {__symbolic: 'reference', module: from});

View File

@ -83,6 +83,9 @@ export class MockNode implements ts.Node {
getText(sourceFile?: ts.SourceFile): string { return ''; } getText(sourceFile?: ts.SourceFile): string { return ''; }
getFirstToken(sourceFile?: ts.SourceFile): ts.Node { return null; } getFirstToken(sourceFile?: ts.SourceFile): ts.Node { return null; }
getLastToken(sourceFile?: ts.SourceFile): ts.Node { return null; } getLastToken(sourceFile?: ts.SourceFile): ts.Node { return null; }
forEachChild<T>(cbNode: (node: ts.Node) => T, cbNodeArray?: (nodes: ts.Node[]) => T): T {
return null;
}
} }
export class MockIdentifier extends MockNode implements ts.Identifier { export class MockIdentifier extends MockNode implements ts.Identifier {