diff --git a/src/services/transpile.ts b/src/services/transpile.ts index 030d2273b62..bdc27ac5e22 100644 --- a/src/services/transpile.ts +++ b/src/services/transpile.ts @@ -26,7 +26,15 @@ namespace ts { export function transpileModule(input: string, transpileOptions: TranspileOptions): TranspileOutput { const diagnostics: Diagnostic[] = []; - const options: CompilerOptions = transpileOptions.compilerOptions ? fixupCompilerOptions(transpileOptions.compilerOptions, diagnostics) : getDefaultCompilerOptions(); + const options: CompilerOptions = transpileOptions.compilerOptions ? fixupCompilerOptions(transpileOptions.compilerOptions, diagnostics) : {}; + + // mix in default options + const defaultOptions = getDefaultCompilerOptions(); + for (const key in defaultOptions) { + if (hasProperty(defaultOptions, key) && options[key] === undefined) { + options[key] = defaultOptions[key]; + } + } options.isolatedModules = true; diff --git a/src/testRunner/unittests/services/transpile.ts b/src/testRunner/unittests/services/transpile.ts index 8429179ffa3..6e8f3bcac9c 100644 --- a/src/testRunner/unittests/services/transpile.ts +++ b/src/testRunner/unittests/services/transpile.ts @@ -17,7 +17,10 @@ namespace ts { transpileOptions = testSettings.options || {}; if (!transpileOptions.compilerOptions) { - transpileOptions.compilerOptions = {}; + transpileOptions.compilerOptions = { }; + } + if (transpileOptions.compilerOptions.target === undefined) { + transpileOptions.compilerOptions.target = ScriptTarget.ES3; } if (transpileOptions.compilerOptions.newLine === undefined) {