libs/nx/src/generators/journey-src/lib/get-plugins-insights/get-plugins-insights.ts
Properties |
metadata | |
Type |
PluginMetadataFileSchema | undefined
|
import { LibraryMetaData } from '../add-acl-defaults-to-policy/read-library-metadata';
import { PluginConfiguration, PluginMetadataFileSchema } from '@allianz/taly-core/schemas';
export interface PluginInsight extends PluginConfiguration {
metadata: PluginMetadataFileSchema | undefined;
}
export function getPluginsInsights(
pluginsFromPagesJson: PluginConfiguration[],
libraryMetadata: LibraryMetaData[]
): PluginInsight[] {
return pluginsFromPagesJson
.map((plugin) => {
const matchingLibrary = libraryMetadata.find((lib) =>
lib.pluginMetadata?.plugins?.some((pluginMeta) => pluginMeta.package === plugin.package)
);
return {
...plugin,
metadata: matchingLibrary?.pluginMetadata
};
})
.filter((insight): insight is PluginInsight => insight !== null);
}