import {EnrichedEntity, Entity} from "../types"; import details from "../../res/details.json"; import manual from "../../res/manual.json"; const joined = [...details, ...manual] as Entity[] const factories = joined.map((detail: EnrichedEntity) => { detail.usedBy = joined .filter(f => Object .keys(f.recipe?.prerequisites ?? {}) .includes(detail.href) ) return detail; }) const detailsMap = Object.fromEntries(factories.map((detail: EnrichedEntity) => [detail.href, detail])) export const useFactories = () => ({ factories, findFactory: (uid: string): EnrichedEntity|undefined => { return detailsMap[uid] } })