(oldFile, importsToCopy, newFileImportsFromOldFile, changes, checker, useEsModuleSyntax, quotePreference)
| 162355 | } |
| 162356 | } |
| 162357 | function getNewFileImportsAndAddExportInOldFile(oldFile, importsToCopy, newFileImportsFromOldFile, changes, checker, useEsModuleSyntax, quotePreference) { |
| 162358 | var copiedOldImports = []; |
| 162359 | for (var _i = 0, _a = oldFile.statements; _i < _a.length; _i++) { |
| 162360 | var oldStatement = _a[_i]; |
| 162361 | forEachImportInStatement(oldStatement, function (i) { |
| 162362 | ts.append(copiedOldImports, filterImport(i, moduleSpecifierFromImport(i), function (name) { return importsToCopy.has(checker.getSymbolAtLocation(name)); })); |
| 162363 | }); |
| 162364 | } |
| 162365 | // Also, import things used from the old file, and insert 'export' modifiers as necessary in the old file. |
| 162366 | var oldFileDefault; |
| 162367 | var oldFileNamedImports = []; |
| 162368 | var markSeenTop = ts.nodeSeenTracker(); // Needed because multiple declarations may appear in `const x = 0, y = 1;`. |
| 162369 | newFileImportsFromOldFile.forEach(function (symbol) { |
| 162370 | if (!symbol.declarations) { |
| 162371 | return; |
| 162372 | } |
| 162373 | for (var _i = 0, _a = symbol.declarations; _i < _a.length; _i++) { |
| 162374 | var decl = _a[_i]; |
| 162375 | if (!isTopLevelDeclaration(decl)) |
| 162376 | continue; |
| 162377 | var name = nameOfTopLevelDeclaration(decl); |
| 162378 | if (!name) |
| 162379 | continue; |
| 162380 | var top = getTopLevelDeclarationStatement(decl); |
| 162381 | if (markSeenTop(top)) { |
| 162382 | addExportToChanges(oldFile, top, name, changes, useEsModuleSyntax); |
| 162383 | } |
| 162384 | if (ts.hasSyntacticModifier(decl, 512 /* ModifierFlags.Default */)) { |
| 162385 | oldFileDefault = name; |
| 162386 | } |
| 162387 | else { |
| 162388 | oldFileNamedImports.push(name.text); |
| 162389 | } |
| 162390 | } |
| 162391 | }); |
| 162392 | ts.append(copiedOldImports, makeImportOrRequire(oldFileDefault, oldFileNamedImports, ts.removeFileExtension(ts.getBaseFileName(oldFile.fileName)), useEsModuleSyntax, quotePreference)); |
| 162393 | return copiedOldImports; |
| 162394 | } |
| 162395 | function makeUniqueModuleName(moduleName, extension, inDirectory, host) { |
| 162396 | var newModuleName = moduleName; |
| 162397 | for (var i = 1;; i++) { |
no test coverage detected