UNPKG

@argdown/map-views

Version:

Browser-based map views for Argdown data using dagre-d3 and viz.js

52 lines (51 loc) 1.56 kB
import "d3-transition"; import { IMap, DefaultSettings } from "@argdown/core"; import { ZoomManager, OnZoomChangedHandler } from "./ZoomManager"; import { CanSelectNode, OnSelectionChangedHandler } from "./CanSelectNode"; export interface IDagreLabelSettings { bold?: boolean; font?: string; fontSize?: number; charactersInLine?: number; } export interface IDagreNodeSettings { lineWidth?: number; rx?: number; ry?: number; title?: IDagreLabelSettings; text?: IDagreLabelSettings; } export interface IDagreSettings { rankDir?: string; rankSep?: number; nodeSep?: number; measureLineWidth?: boolean; argument?: IDagreNodeSettings; statement?: IDagreNodeSettings; group?: { lineWidth?: number; title?: IDagreLabelSettings; }; } export declare const dagreDefaultSettings: DefaultSettings<IDagreSettings>; export interface IDagreMapProps { settings?: IDagreSettings; map: IMap; selectedNode?: string | null; position?: { x?: number; y?: number; }; scale?: number; } export declare class DagreMap implements CanSelectNode { svgElement: SVGSVGElement; zoomManager: ZoomManager; selectedElement?: SVGGraphicsElement | null; onSelectionChanged?: OnSelectionChangedHandler; constructor(svgElement: SVGSVGElement, onZoomChanged?: OnZoomChangedHandler, onSelectionChanged?: OnSelectionChangedHandler); render(props: IDagreMapProps): void; deselectNode(): void; private _deselectNode; selectNode(id: string): void; }