flowappplatform-appbuilder-graphs
Version:
Graph Module for Flow App Builder
48 lines (47 loc) • 1.79 kB
TypeScript
/**
* @class Component
*/
import * as React from "react";
import { IComponent } from "./interfaces/Component";
import { KonvaEventObject } from "konva";
import { IPort, IComponentDefintion } from "./interfaces/ComponentDefinition";
export declare type Props = {
component: IComponent;
selectedComponentId: string | null;
newConnectionInProgress: boolean;
onComponentMousedOver(component: IComponent, x: number, y: number): void;
onComponentMousedOut(component: IComponent): void;
onComponentMoved(component: IComponent, x: number, y: number): void;
onComponentMoveFinished(component: IComponent): void;
onConnectionStart(component: IComponent, port: IPort): void;
onComponentDeleted(component: IComponent): void;
onComponentSelected(component: IComponent | null): void;
};
export declare type State = {
imageLoaded: boolean;
closeImageLoaded: boolean;
infoImageLoaded: boolean;
mouseIsOver: boolean;
};
export default class Component extends React.Component<Props, State> {
text: any;
image: HTMLImageElement;
closeImage: HTMLImageElement;
infoImage: HTMLImageElement;
definition: IComponentDefintion | undefined;
state: {
imageLoaded: boolean;
closeImageLoaded: boolean;
infoImageLoaded: boolean;
mouseIsOver: boolean;
};
componentMoved: (ev: KonvaEventObject<DragEvent>) => void;
componentMoveFinished: (ev: KonvaEventObject<DragEvent>) => void;
onPortHovered: (port: IPort) => void;
onText: (text: any) => void;
componentDidMount(): void;
componentDeleted: () => void;
componentMousedOver: (event: any) => void;
componentMousedOut: (event: any) => void;
render(): JSX.Element | null;
}