From b39b4e05be1996817f8804bd02eb6cc695fa71cb Mon Sep 17 00:00:00 2001 From: Andrew Branch Date: Wed, 4 Dec 2019 12:07:25 -0800 Subject: [PATCH] Use namespace import for esnext when esModuleInterop is off (#35475) --- src/services/codefixes/importFixes.ts | 4 ++-- .../importNameCodeFixNewImportExportEqualsESNextInteropOff.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/services/codefixes/importFixes.ts b/src/services/codefixes/importFixes.ts index a43aa7f6f9d..d4adaa98f85 100644 --- a/src/services/codefixes/importFixes.ts +++ b/src/services/codefixes/importFixes.ts @@ -455,8 +455,8 @@ namespace ts.codefix { } function getExportEqualsImportKind(importingFile: SourceFile, compilerOptions: CompilerOptions, checker: TypeChecker): ImportKind { - if (getAllowSyntheticDefaultImports(compilerOptions) && getEmitModuleKind(compilerOptions) >= ModuleKind.ES2015) { - return ImportKind.Default; + if (getEmitModuleKind(compilerOptions) >= ModuleKind.ES2015) { + return getAllowSyntheticDefaultImports(compilerOptions) ? ImportKind.Default : ImportKind.Namespace; } if (isInJSFile(importingFile)) { return isExternalModule(importingFile) ? ImportKind.Default : ImportKind.ConstEquals; diff --git a/tests/cases/fourslash/importNameCodeFixNewImportExportEqualsESNextInteropOff.ts b/tests/cases/fourslash/importNameCodeFixNewImportExportEqualsESNextInteropOff.ts index 329006cab93..db0c12dd5e0 100644 --- a/tests/cases/fourslash/importNameCodeFixNewImportExportEqualsESNextInteropOff.ts +++ b/tests/cases/fourslash/importNameCodeFixNewImportExportEqualsESNextInteropOff.ts @@ -12,6 +12,6 @@ ////foo goTo.file('/index.ts'); -verify.importFixAtPosition([`import foo = require("foo"); +verify.importFixAtPosition([`import * as foo from "foo"; foo`]);