* Collects the dependency groups for this files imports. * * @param externalImports The imports for the file.
(externalImports)
| 105925 | * @param externalImports The imports for the file. |
| 105926 | */ |
| 105927 | function collectDependencyGroups(externalImports) { |
| 105928 | var groupIndices = new ts.Map(); |
| 105929 | var dependencyGroups = []; |
| 105930 | for (var _i = 0, externalImports_1 = externalImports; _i < externalImports_1.length; _i++) { |
| 105931 | var externalImport = externalImports_1[_i]; |
| 105932 | var externalModuleName = ts.getExternalModuleNameLiteral(factory, externalImport, currentSourceFile, host, resolver, compilerOptions); |
| 105933 | if (externalModuleName) { |
| 105934 | var text = externalModuleName.text; |
| 105935 | var groupIndex = groupIndices.get(text); |
| 105936 | if (groupIndex !== undefined) { |
| 105937 | // deduplicate/group entries in dependency list by the dependency name |
| 105938 | dependencyGroups[groupIndex].externalImports.push(externalImport); |
| 105939 | } |
| 105940 | else { |
| 105941 | groupIndices.set(text, dependencyGroups.length); |
| 105942 | dependencyGroups.push({ |
| 105943 | name: externalModuleName, |
| 105944 | externalImports: [externalImport] |
| 105945 | }); |
| 105946 | } |
| 105947 | } |
| 105948 | } |
| 105949 | return dependencyGroups; |
| 105950 | } |
| 105951 | /** |
| 105952 | * Adds the statements for the module body function for the source file. |
| 105953 | * |
no test coverage detected