UNPKG

@davidyaha/graphql-birdseye

Version:
71 lines (70 loc) 2.03 kB
import { GraphQLNamedType, GraphQLInputObjectType, GraphQLEnumType, GraphQLScalarType, GraphQLUnionType } from "graphql/type/definition"; import { TypeMap } from "graphql/type/schema"; import { Theme } from "../defaultTheme"; export declare type FilteredGraphqlOutputType = Exclude<GraphQLNamedType, GraphQLInputObjectType | GraphQLEnumType | GraphQLScalarType | GraphQLUnionType>; export declare type EventType = "loading:start" | "loading:stop"; export default class JointJS { /** * config */ private theme; private activeType; private animation; private typeMap; private maxZoom; /** * internal */ private eventMap; private graph; private paper; private panZoom; private cachedCells; private cachedLinks; private mounted; constructor(opts: { theme?: Theme; }); init(el: any, bounds: any, typeMap: TypeMap): Promise<void>; destroy(): Promise<void>; private bindInteractionEvents; get(key: any): any; /** * Events */ on(key: EventType, callback: () => any): void; startLoading(): Promise<any>; stopLoading(): Promise<any>; enableAnimation(): void; disableAnimation(): void; setTypeMap(newTypeMap: any): Promise<void>; setActiveType(activeType: any): Promise<void>; setSize(width: number, height: number): Promise<void>; /** * * Render */ renderElements(opts?: { typeMap?: any; activeType?: string; animate?: boolean; }): Promise<void>; private getToRenderTypes; private removeUnusedElements; private addNewElements; private layoutGraph; /** * Helpers */ private createNode; private createLink; private addTools; private getHoveredPort; private highlightLinks; /** * Zoom */ private resizeToFit; focusBBox(bBox: any): void; animatePanAndZoom(x: any, y: any, zoomEnd: any): void; }