diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index 0a4481483c5..dd16afbcea1 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -525,7 +525,21 @@ namespace ts { } else { const filesSeen: Map = {}; - const exclude = json["exclude"] instanceof Array ? map(json["exclude"], normalizeSlashes) : undefined; + + let exclude: string[] = []; + if(json["exclude"] instanceof Array){ + exclude = json["exclude"]; + } + else { + // by default exclude node_modules, and any specificied output directory + exclude = ["./node_modules"] + let outDir = json["compilerOptions"] && json["compilerOptions"]["outDir"]; + if(outDir) { + exclude.push(outDir); + } + } + exclude = map(exclude, normalizeSlashes); + const supportedExtensions = getSupportedExtensions(options); Debug.assert(indexOf(supportedExtensions, ".ts") < indexOf(supportedExtensions, ".d.ts"), "Changed priority of extensions to pick"); diff --git a/src/services/services.ts b/src/services/services.ts index b553faad1ab..7a767011176 100644 --- a/src/services/services.ts +++ b/src/services/services.ts @@ -1712,7 +1712,7 @@ namespace ts { // Always default to "ScriptTarget.ES5" for the language service return { target: ScriptTarget.ES5, - module: ModuleKind.None, + module: ModuleKind.CommonJS, jsx: JsxEmit.Preserve }; }