Skip to content

Commit 5a663c1

Browse files
authored
Use flatMap to remove TypeScript as (#323)
1 parent f92f5a6 commit 5a663c1

File tree

1 file changed

+26
-29
lines changed

1 file changed

+26
-29
lines changed

lib/dependency-versions.ts

Lines changed: 26 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -98,38 +98,35 @@ function recordDependencyVersion(
9898
export function calculateMismatchingVersions(
9999
dependencyVersions: DependenciesToVersionsSeen
100100
): MismatchingDependencyVersions {
101-
return [...dependencyVersions.keys()]
102-
.sort()
103-
.map((dependency) => {
104-
const versionList = dependencyVersions.get(dependency);
105-
/* istanbul ignore if */
106-
if (!versionList) {
107-
// `versionList` should always exist at this point, this if statement is just to please TypeScript.
108-
return undefined;
109-
}
101+
return [...dependencyVersions.keys()].sort().flatMap((dependency) => {
102+
const versionList = dependencyVersions.get(dependency);
103+
/* istanbul ignore if */
104+
if (!versionList) {
105+
// `versionList` should always exist at this point, this if statement is just to please TypeScript.
106+
return [];
107+
}
110108

111-
const uniqueVersions = [
112-
...new Set(versionList.map((object) => object.version)),
113-
].sort();
109+
const uniqueVersions = [
110+
...new Set(versionList.map((object) => object.version)),
111+
].sort();
114112

115-
if (uniqueVersions.length > 1) {
116-
const uniqueVersionsWithInfo = uniqueVersions.map((uniqueVersion) => {
117-
const matchingVersions = versionList.filter(
118-
(object) => object.version === uniqueVersion
119-
);
120-
return {
121-
version: uniqueVersion,
122-
packages: matchingVersions
123-
.map((object) => object.package)
124-
.sort(Package.comparator),
125-
};
126-
});
127-
return { dependency, versions: uniqueVersionsWithInfo };
128-
}
113+
if (uniqueVersions.length > 1) {
114+
const uniqueVersionsWithInfo = uniqueVersions.map((uniqueVersion) => {
115+
const matchingVersions = versionList.filter(
116+
(object) => object.version === uniqueVersion
117+
);
118+
return {
119+
version: uniqueVersion,
120+
packages: matchingVersions
121+
.map((object) => object.package)
122+
.sort(Package.comparator),
123+
};
124+
});
125+
return { dependency, versions: uniqueVersionsWithInfo };
126+
}
129127

130-
return undefined;
131-
})
132-
.filter((object) => object !== undefined) as MismatchingDependencyVersions;
128+
return [];
129+
});
133130
}
134131

135132
export function filterOutIgnoredDependencies(

0 commit comments

Comments
 (0)