import { EnrichedEntity, Entity } from '../../../src/types' import details from '../../../res/details.json' import manual from '../../../res/manual.json' import exclude from '../../../res/exclude.json' const manualEntities = manual as Entity[] const manualKeys = new Set(manualEntities.map(entity => entity.href)) const detailEntities = (details as Entity[]).filter(detail => !manualKeys.has(detail.href)) const joined = [...detailEntities, ...manualEntities] export const factories = joined .map((detail: EnrichedEntity) => { detail.usedBy = joined.filter(f => Object.keys(f.recipe?.prerequisites ?? {}).includes(detail.href) ) return detail }) .filter(detail => !(exclude as string[]).includes(detail.href))