in src/api/catalog-search/catalog-search.ts [345:385]
private detectConstructFrameworks() {
const results: CatalogConstructFrameworks = [...this.map.values()].reduce(
(frameworks: CatalogConstructFrameworks, pkg: ExtendedCatalogPackage) => {
const { metadata } = pkg;
const frameworkName = metadata?.constructFramework?.name;
const majorVersion = metadata?.constructFramework?.majorVersion;
if (frameworkName) {
const entry = frameworks[frameworkName];
if (
majorVersion !== undefined &&
!entry.majorVersions.includes(majorVersion)
) {
entry.majorVersions.push(majorVersion);
}
entry.pkgCount += 1;
}
return frameworks;
},
{
[CDKType.awscdk]: {
majorVersions: [],
pkgCount: 0,
},
[CDKType.cdk8s]: {
majorVersions: [],
pkgCount: 0,
},
[CDKType.cdktf]: {
majorVersions: [],
pkgCount: 0,
},
}
);
return results;
}