diff --git a/src/harness/unittests/organizeImports.ts b/src/harness/unittests/organizeImports.ts index ebd5a7925a2..b8ee6620f5e 100644 --- a/src/harness/unittests/organizeImports.ts +++ b/src/harness/unittests/organizeImports.ts @@ -243,6 +243,15 @@ D(); import { F1, F2 } from "lib"; import * as NS from "lib"; import D from "lib"; +`, + }, + libFile); + + testOrganizeImports("Unused_Empty", + { + path: "/test.ts", + content: ` +import { } from "lib"; `, }, libFile); diff --git a/src/services/organizeImports.ts b/src/services/organizeImports.ts index 5109b050b6b..d8f80faa55a 100644 --- a/src/services/organizeImports.ts +++ b/src/services/organizeImports.ts @@ -198,7 +198,9 @@ namespace ts.OrganizeImports { : namedImports[0]; const newNamedImports = sortedImportSpecifiers.length === 0 - ? undefined + ? newDefaultImport + ? undefined + : createNamedImports(emptyArray) : namedImports.length === 0 ? createNamedImports(sortedImportSpecifiers) : updateNamedImports(namedImports[0].importClause.namedBindings as NamedImports, sortedImportSpecifiers); diff --git a/tests/baselines/reference/organizeImports/Unused_Empty.ts b/tests/baselines/reference/organizeImports/Unused_Empty.ts new file mode 100644 index 00000000000..88a75aeff8e --- /dev/null +++ b/tests/baselines/reference/organizeImports/Unused_Empty.ts @@ -0,0 +1,7 @@ +// ==ORIGINAL== + +import { } from "lib"; + +// ==ORGANIZED== + +import { } from "lib";