'use client'; import React from 'react'; import AppendixTables from './AppendixTables'; import SkillsAppendixTable from './SkillsAppendixTable'; import { GraphInsightsPayload, SkillsAll } from '../types'; export default function AppendixContent({ graphInsights, updatedAt, developerName, genreMapping, screeningSources, headless, skillsAll, }: { graphInsights: GraphInsightsPayload; updatedAt: string; developerName?: string; genreMapping: Record; // eslint-disable-next-line @typescript-eslint/no-explicit-any screeningSources?: any; headless?: boolean; skillsAll: SkillsAll; }) { const ofacProvided = screeningSources?.ofac_screen?.sources || []; const lists = [...(screeningSources?.ofac_lists || []), ...ofacProvided]; const seen: { [k: string]: boolean } = {}; const dedup: string[] = []; for (let i = 0; i < lists.length; i++) { const val = lists[i]; if (!seen[val]) { seen[val] = true; dedup.push(val); } } const detailed = screeningSources?.sanctions_sources_detailed || []; const useDetailed = detailed && detailed.length > 0; return (

Skills

Skills are grouped by evidence: Observed when demonstrated in code, Self-reported when declared by the developer without independent verification, and Certified when confirmed through a credential.
{Array.isArray(graphInsights?.business_rules_all) && graphInsights.business_rules_all.length > 0 && (

Observations

} headless={headless} />
)} {screeningSources && (

Sanctions & Watchlists

)}
); }