mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-05-17 01:49:57 -05:00
Don’t create invalid type-only imports during add missing import (#43828)
This commit is contained in:
@@ -420,6 +420,9 @@ namespace ts.codefix {
|
||||
const { importClause } = declaration;
|
||||
if (!importClause || !isStringLiteralLike(declaration.moduleSpecifier)) return undefined;
|
||||
const { name, namedBindings } = importClause;
|
||||
// A type-only import may not have both a default and named imports, so the only way a name can
|
||||
// be added to an existing type-only import is adding a named import to existing named bindings.
|
||||
if (importClause.isTypeOnly && !(importKind === ImportKind.Named && namedBindings)) return undefined;
|
||||
return importKind === ImportKind.Default && !name || importKind === ImportKind.Named && (!namedBindings || namedBindings.kind === SyntaxKind.NamedImports)
|
||||
? { kind: ImportFixKind.AddToExisting, importClauseOrBindingPattern: importClause, importKind, moduleSpecifier: declaration.moduleSpecifier.text, canUseTypeOnlyImport }
|
||||
: undefined;
|
||||
|
||||
Reference in New Issue
Block a user