UNPKG

@reactodia/workspace

Version:

Reactodia Workspace -- library for visual interaction with graphs in a form of a diagram.

34 lines (33 loc) 1.22 kB
import { connectWorker } from "@reactodia/worker-proxy/protocol"; import { blockingDefaultLayout, colaForceLayout, colaFlowLayout, colaRemoveOverlaps } from "./layout-sync.js"; class DefaultLayouts { /** * Default layout algorithm, the same as {@link blockingDefaultLayout} * but non-blocking due to being run in a worker. * * @see {@link blockingDefaultLayout} */ defaultLayout = async (graph, state, options) => { return blockingDefaultLayout(graph, state, options); }; /** * Force-directed layout algorithm from [cola.js](https://ialab.it.monash.edu/webcola/). */ forceLayout = async (graph, state, options) => { return Promise.resolve(colaForceLayout(graph, state, options)); }; /** * Flow layout algorithm from [cola.js](https://ialab.it.monash.edu/webcola/). */ flowLayout = async (graph, state, options) => { return Promise.resolve(colaFlowLayout(graph, state, options)); }; /** * Remove overlaps algorithm from [cola.js](https://ialab.it.monash.edu/webcola/). */ removeOverlaps = async (graph, state) => { return Promise.resolve(colaRemoveOverlaps(state)); }; } connectWorker(DefaultLayouts); //# sourceMappingURL=layout.worker.js.map