fix(41244): ignore synthesized imports (#41267)

This commit is contained in:
Oleksandr T
2020-10-27 13:22:02 -07:00
committed by GitHub
parent c923023494
commit 9ed608b439
3 changed files with 35 additions and 1 deletions
+3 -1
View File
@@ -1827,7 +1827,9 @@ namespace ts {
return preferences.quotePreference === "single" ? QuotePreference.Single : QuotePreference.Double;
}
else {
const firstModuleSpecifier = sourceFile.imports && find(sourceFile.imports, isStringLiteral);
// ignore synthetic import added when importHelpers: true
const firstModuleSpecifier = sourceFile.imports &&
find(sourceFile.imports, n => isStringLiteral(n) && !nodeIsSynthesized(n.parent)) as StringLiteral;
return firstModuleSpecifier ? quotePreferenceFromString(firstModuleSpecifier, sourceFile) : QuotePreference.Double;
}
}
@@ -0,0 +1,16 @@
/// <reference path='fourslash.ts'/>
// @importHelpers: true
// @filename: /a.ts
////export default () => {};
// @filename: /b.ts
////export default () => {};
// @filename: /test.ts
////import a from "./a";
////[|b|];
goTo.file("/test.ts");
verify.importFixAtPosition([`import b from "./b";
b`]);
@@ -0,0 +1,16 @@
/// <reference path='fourslash.ts'/>
// @importHelpers: true
// @filename: /a.ts
////export default () => {};
// @filename: /b.ts
////export default () => {};
// @filename: /test.ts
////import a from './a';
////[|b|];
goTo.file("/test.ts");
verify.importFixAtPosition([`import b from './b';
b`]);