UNPKG

ngx-diagrams

Version:

> Light Weight, Modular, Typed Diagram Engine for Angular

73 lines (72 loc) 2.91 kB
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnDestroy, Renderer2, ViewContainerRef } from '@angular/core'; import { BehaviorSubject, Observable, ReplaySubject } from 'rxjs'; import { BaseAction, SelectingAction } from '../../actions'; import { BaseModel } from '../../models/base.model'; import { DiagramModel } from '../../models/diagram.model'; import { LinkModel } from '../../models/link.model'; import { NodeModel } from '../../models/node.model'; import { EntityMap, ZonedClass } from '../../utils'; export declare class NgxDiagramComponent implements AfterViewInit, OnDestroy, ZonedClass { protected document: any; ngZone: NgZone; protected renderer: Renderer2; protected cdRef: ChangeDetectorRef; protected elRef: ElementRef<HTMLElement>; diagramModel: DiagramModel; allowCanvasZoom: boolean; allowCanvasTranslation: boolean; inverseZoom: boolean; allowLooseLinks: boolean; maxZoomOut: number; maxZoomIn: number; portMagneticRadius: number; smartRouting: boolean; actionStartedFiring: EventEmitter<BaseAction>; actionStillFiring: EventEmitter<BaseAction>; actionStoppedFiring: EventEmitter<BaseAction>; nodesLayer: ViewContainerRef; linksLayer: ViewContainerRef; canvas: ElementRef; protected nodes$: Observable<EntityMap<NodeModel>>; protected links$: Observable<EntityMap<LinkModel>>; protected action$: BehaviorSubject<BaseAction>; protected nodesRendered$: BehaviorSubject<boolean>; protected destroyed$: ReplaySubject<boolean>; get host(): HTMLElement; constructor(document: any, ngZone: NgZone, renderer: Renderer2, cdRef: ChangeDetectorRef, elRef: ElementRef<HTMLElement>); ngAfterViewInit(): void; ngOnDestroy(): void; /** * fire the action registered and notify subscribers */ fireAction(): void; /** * Unregister the action, post firing and notify subscribers */ stopFiringAction(shouldSkipEvent?: boolean): void; /** * Register the new action, pre firing and notify subscribers */ startFiringAction(action: BaseAction): void; selectAction(): BehaviorSubject<SelectingAction>; shouldDrawSelectionBox(): boolean; getMouseElement(event: MouseEvent): { model: BaseModel; element: Element; }; onMouseUp(event: MouseEvent): void; /** * @description Mouse Move Event Handler * @param event MouseEvent */ onMouseMove(event: MouseEvent): void; onMouseDown(event: MouseEvent): void; onMouseWheel(event: WheelEvent): void; protected setLayerStyles(x: number, y: number, zoom: number): void; protected initNodes(): void; protected initLinks(): void; protected initSubs(): void; protected getNodesLayer(): HTMLDivElement; protected getLinksLayer(): HTMLDivElement; protected createMouseListeners(): void; }