@foblex/flow
Version:
An Angular library designed to simplify the creation and manipulation of dynamic flow. Provides components for flows, nodes, and connections, automating node manipulation and inter-node connections.
62 lines (61 loc) • 3.09 kB
TypeScript
import { ElementRef } from '@angular/core';
import { ILine } from '@foblex/2d';
import { EFConnectionBehavior } from './e-f-connection-behavior';
import { EFConnectionType } from './e-f-connection-type';
import { IHasConnectionColor } from './i-has-connection-color';
import { IHasConnectionFromTo } from './i-has-connection-from-to';
import { IHasConnectionText } from './i-has-connection-text';
import { IConnectionPath } from './f-path';
import { IConnectionGradient } from './f-gradient';
import { FConnectionDragHandleEndComponent } from './f-drag-handle';
import { FConnectionSelectionComponent } from './f-selection';
import { IConnectionText } from './f-connection-text';
import { EFConnectableSide } from '../../f-connectors';
import { FConnectionFactory } from '../f-connection-builder';
import { IHasHostElement } from '../../i-has-host-element';
import { ISelectable, ICanChangeVisibility } from '../../mixins';
import * as i0 from "@angular/core";
declare const MIXIN_BASE: import("../../mixins").Constructor<ISelectable> & import("../../mixins").AbstractConstructor<ISelectable> & import("../../mixins").Constructor<ICanChangeVisibility> & import("../../mixins").AbstractConstructor<ICanChangeVisibility> & {
new (hostElement: HTMLElement): {
hostElement: HTMLElement;
};
};
export declare abstract class FConnectionBase extends MIXIN_BASE implements IHasHostElement, ISelectable, ICanChangeVisibility, IHasConnectionColor, IHasConnectionFromTo, IHasConnectionText {
private cFactory;
abstract fId: string;
abstract fStartColor: string;
abstract fEndColor: string;
abstract fOutputId: string;
abstract fInputId: string;
abstract fRadius: number;
abstract fOffset: number;
path: string;
line: ILine;
abstract fDraggingDisabled: boolean;
abstract fSelectionDisabled: boolean;
abstract boundingElement: HTMLElement | SVGElement;
abstract fBehavior: EFConnectionBehavior;
abstract fType: EFConnectionType | string;
abstract fDefs: ElementRef<SVGDefsElement>;
abstract fPath: IConnectionPath;
abstract fGradient: IConnectionGradient;
abstract fDragHandle: FConnectionDragHandleEndComponent;
abstract fSelection: FConnectionSelectionComponent;
abstract fTextComponent: IConnectionText;
abstract fText: string;
abstract fTextStartOffset: string;
abstract fConnectionCenter: ElementRef<HTMLDivElement>;
private penultimatePoint;
protected constructor(elementReference: ElementRef<HTMLElement>, cFactory: FConnectionFactory);
initialize(): void;
isContains(element: HTMLElement | SVGElement): boolean;
setLine({ point1, point2 }: ILine, sourceSide: EFConnectableSide, targetSide: EFConnectableSide): void;
private getPathResult;
private getTransform;
markChildrenAsSelected(): void;
unmarkChildrenAsSelected(): void;
redraw(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<FConnectionBase, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<FConnectionBase, never, never, {}, {}, never, never, false, never>;
}
export {};