(decl)
| 108650 | } |
| 108651 | } |
| 108652 | function transformImportDeclaration(decl) { |
| 108653 | if (!decl.importClause) { |
| 108654 | // import "mod" - possibly needed for side effects? (global interface patches, module augmentations, etc) |
| 108655 | return factory.updateImportDeclaration(decl, |
| 108656 | /*decorators*/ undefined, decl.modifiers, decl.importClause, rewriteModuleSpecifier(decl, decl.moduleSpecifier), getResolutionModeOverrideForClauseInNightly(decl.assertClause)); |
| 108657 | } |
| 108658 | // The `importClause` visibility corresponds to the default's visibility. |
| 108659 | var visibleDefaultBinding = decl.importClause && decl.importClause.name && resolver.isDeclarationVisible(decl.importClause) ? decl.importClause.name : undefined; |
| 108660 | if (!decl.importClause.namedBindings) { |
| 108661 | // No named bindings (either namespace or list), meaning the import is just default or should be elided |
| 108662 | return visibleDefaultBinding && factory.updateImportDeclaration(decl, /*decorators*/ undefined, decl.modifiers, factory.updateImportClause(decl.importClause, decl.importClause.isTypeOnly, visibleDefaultBinding, |
| 108663 | /*namedBindings*/ undefined), rewriteModuleSpecifier(decl, decl.moduleSpecifier), getResolutionModeOverrideForClauseInNightly(decl.assertClause)); |
| 108664 | } |
| 108665 | if (decl.importClause.namedBindings.kind === 268 /* SyntaxKind.NamespaceImport */) { |
| 108666 | // Namespace import (optionally with visible default) |
| 108667 | var namedBindings = resolver.isDeclarationVisible(decl.importClause.namedBindings) ? decl.importClause.namedBindings : /*namedBindings*/ undefined; |
| 108668 | return visibleDefaultBinding || namedBindings ? factory.updateImportDeclaration(decl, /*decorators*/ undefined, decl.modifiers, factory.updateImportClause(decl.importClause, decl.importClause.isTypeOnly, visibleDefaultBinding, namedBindings), rewriteModuleSpecifier(decl, decl.moduleSpecifier), getResolutionModeOverrideForClauseInNightly(decl.assertClause)) : undefined; |
| 108669 | } |
| 108670 | // Named imports (optionally with visible default) |
| 108671 | var bindingList = ts.mapDefined(decl.importClause.namedBindings.elements, function (b) { return resolver.isDeclarationVisible(b) ? b : undefined; }); |
| 108672 | if ((bindingList && bindingList.length) || visibleDefaultBinding) { |
| 108673 | return factory.updateImportDeclaration(decl, |
| 108674 | /*decorators*/ undefined, decl.modifiers, factory.updateImportClause(decl.importClause, decl.importClause.isTypeOnly, visibleDefaultBinding, bindingList && bindingList.length ? factory.updateNamedImports(decl.importClause.namedBindings, bindingList) : undefined), rewriteModuleSpecifier(decl, decl.moduleSpecifier), getResolutionModeOverrideForClauseInNightly(decl.assertClause)); |
| 108675 | } |
| 108676 | // Augmentation of export depends on import |
| 108677 | if (resolver.isImportRequiredByAugmentation(decl)) { |
| 108678 | return factory.updateImportDeclaration(decl, |
| 108679 | /*decorators*/ undefined, decl.modifiers, |
| 108680 | /*importClause*/ undefined, rewriteModuleSpecifier(decl, decl.moduleSpecifier), getResolutionModeOverrideForClauseInNightly(decl.assertClause)); |
| 108681 | } |
| 108682 | // Nothing visible |
| 108683 | } |
| 108684 | function getResolutionModeOverrideForClauseInNightly(assertClause) { |
| 108685 | var mode = ts.getResolutionModeOverrideForClause(assertClause); |
| 108686 | if (mode !== undefined) { |
no test coverage detected
searching dependent graphs…