import { readFileSync } from "node:fs"; import { join } from "node:path"; import type { RecordRow } from "./types"; type Snapshot = { dataspace: { id: string; title: string; description: string }; kinds: { id: string; label: string; plural: string }[]; entities: { id: string; kindId: string; title: string; tldr: string }[]; }; export function loadSystemsThinking(): { title: string; description: string; rows: RecordRow[] } { const path = join(process.cwd(), "../examples/dataspaces/systems-thinking/snapshot.json"); const snapshot = JSON.parse(readFileSync(path, "utf8")) as Snapshot; const labels = new Map(snapshot.kinds.map((kind) => [kind.id, kind.label])); const rows = snapshot.entities.map((entity) => ({ id: entity.id, kindId: entity.kindId, kindLabel: labels.get(entity.kindId) ?? entity.kindId, title: entity.title, tldr: entity.tldr, })); return { title: snapshot.dataspace.title, description: snapshot.dataspace.description, rows, }; }