Files
prowler/ui/lib/provider-helpers.ts
Alejandro Bailo 50dc396aa3 feat: scan id filter drowpdown (#7949)
Co-authored-by: Pablo Lara <larabjj@gmail.com>
2025-06-06 12:38:14 +02:00

41 lines
945 B
TypeScript

import {
ProviderEntity,
ProviderProps,
ProvidersApiResponse,
} from "@/types/providers";
export const extractProviderUIDs = (
providersData: ProvidersApiResponse,
): string[] => {
if (!providersData?.data) return [];
return Array.from(
new Set(
providersData.data
.map((provider: ProviderProps) => provider.attributes?.uid)
.filter(Boolean),
),
);
};
export const createProviderDetailsMapping = (
providerUIDs: string[],
providersData: ProvidersApiResponse,
): Array<{ [uid: string]: ProviderEntity }> => {
if (!providersData?.data) return [];
return providerUIDs.map((uid) => {
const provider = providersData.data.find(
(p: { attributes: { uid: string } }) => p.attributes?.uid === uid,
);
return {
[uid]: {
provider: provider?.attributes?.provider || "aws",
uid: uid,
alias: provider?.attributes?.alias ?? null,
},
};
});
};