import { readFileSync } from "node:fs"; import JointJsonDeserializer from "./v1/io/deserialize/json/JointJsonDeserializer.js"; import CycleRemoveStep from "./v1/optimizer/siguiyama/CycleRemoveStep.js"; import LayerAssignmentStep from "./v1/optimizer/siguiyama/LayerAssignmentStep.js"; import SiguiyamaAlgorithm from "./v1/optimizer/siguiyama/SiguiyamaAlgorithm.js"; import DefaultGraphService from "./v1/services/DefaultGraphService.js"; const deserializer = new JointJsonDeserializer(); const graph = deserializer.deserialize(String(readFileSync("./data/graph.json"))); const graphService = new DefaultGraphService(); const optimizer = new SiguiyamaAlgorithm().addStep(new CycleRemoveStep(graphService)).addStep(new LayerAssignmentStep(graphService)); optimizer.run(graph);