123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400 |
- import { KeyValue, Size, Basecoat } from '@antv/x6-common';
- import { Rectangle, Point } from '@antv/x6-geometry';
- import { NonUndefined } from 'utility-types';
- import { Attr } from '../registry';
- import { Model } from './model';
- import { PortManager } from './port';
- import { Store } from './store';
- import { Edge } from './edge';
- import { Animation } from './animation';
- import { CellView, Markup } from '../view';
- import { Node } from './node';
- import { Graph } from '../graph';
- export declare class Cell<Properties extends Cell.Properties = Cell.Properties> extends Basecoat<Cell.EventArgs> {
- protected static markup: Markup;
- protected static defaults: Cell.Defaults;
- protected static attrHooks: Attr.Definitions;
- protected static propHooks: Cell.PropHook[];
- static config<C extends Cell.Config = Cell.Config>(presets: C): void;
- static getMarkup(): Markup;
- static getDefaults<T extends Cell.Defaults = Cell.Defaults>(raw?: boolean): T;
- static getAttrHooks(): Attr.Definitions;
- static applyPropHooks(cell: Cell, metadata: Cell.Metadata): Cell.Metadata;
- protected get [Symbol.toStringTag](): string;
- readonly id: string;
- protected readonly store: Store<Cell.Properties>;
- protected readonly animation: Animation;
- protected _model: Model | null;
- protected _parent: Cell | null;
- protected _children: Cell[] | null;
- constructor(metadata?: Cell.Metadata);
- init(): void;
- get model(): Model | null;
- set model(model: Model | null);
- protected preprocess(metadata: Cell.Metadata, ignoreIdCheck?: boolean): Properties;
- protected postprocess(metadata: Cell.Metadata): void;
- protected setup(): void;
- notify<Key extends keyof Cell.EventArgs>(name: Key, args: Cell.EventArgs[Key]): this;
- notify(name: Exclude<string, keyof Cell.EventArgs>, args: any): this;
- isNode(): this is Node;
- isEdge(): this is Edge;
- isSameStore(cell: Cell): boolean;
- get view(): string | undefined;
- get shape(): string;
- getProp(): Properties;
- getProp<K extends keyof Properties>(key: K): Properties[K];
- getProp<K extends keyof Properties>(key: K, defaultValue: Properties[K]): NonUndefined<Properties[K]>;
- getProp<T>(key: string): T;
- getProp<T>(key: string, defaultValue: T): T;
- setProp<K extends keyof Properties>(key: K, value: Properties[K] | null | undefined | void, options?: Cell.SetOptions): this;
- setProp(key: string, value: any, options?: Cell.SetOptions): this;
- setProp(props: Partial<Properties>, options?: Cell.SetOptions): this;
- removeProp<K extends keyof Properties>(key: K | K[], options?: Cell.SetOptions): this;
- removeProp(key: string | string[], options?: Cell.SetOptions): this;
- removeProp(options?: Cell.SetOptions): this;
- hasChanged(): boolean;
- hasChanged<K extends keyof Properties>(key: K | null): boolean;
- hasChanged(key: string | null): boolean;
- getPropByPath<T>(path: string | string[]): T;
- setPropByPath(path: string | string[], value: any, options?: Cell.SetByPathOptions): this;
- removePropByPath(path: string | string[], options?: Cell.SetOptions): this;
- prop(): Properties;
- prop<K extends keyof Properties>(key: K): Properties[K];
- prop<T>(key: string): T;
- prop<T>(path: string[]): T;
- prop<K extends keyof Properties>(key: K, value: Properties[K] | null | undefined | void, options?: Cell.SetOptions): this;
- prop(key: string, value: any, options?: Cell.SetOptions): this;
- prop(path: string[], value: any, options?: Cell.SetOptions): this;
- prop(props: Partial<Properties>, options?: Cell.SetOptions): this;
- previous<K extends keyof Properties>(name: K): Properties[K] | undefined;
- previous<T>(name: string): T | undefined;
- get zIndex(): number | undefined | null;
- set zIndex(z: number | undefined | null);
- getZIndex(): number | undefined;
- setZIndex(z: number, options?: Cell.SetOptions): this;
- removeZIndex(options?: Cell.SetOptions): this;
- toFront(options?: Cell.ToFrontOptions): this;
- toBack(options?: Cell.ToBackOptions): this;
- get markup(): Markup | undefined | null;
- set markup(value: Markup | undefined | null);
- getMarkup(): Markup;
- setMarkup(markup: Markup, options?: Cell.SetOptions): this;
- removeMarkup(options?: Cell.SetOptions): this;
- get attrs(): Attr.CellAttrs | null | undefined;
- set attrs(value: Attr.CellAttrs | null | undefined);
- getAttrs(): {
- [x: string]: Attr.ComplexAttrs;
- };
- setAttrs(attrs: Attr.CellAttrs | null | undefined, options?: Cell.SetAttrOptions): this;
- replaceAttrs(attrs: Attr.CellAttrs, options?: Cell.SetOptions): this;
- updateAttrs(attrs: Attr.CellAttrs, options?: Cell.SetOptions): this;
- removeAttrs(options?: Cell.SetOptions): this;
- getAttrDefinition(attrName: string): string | Attr.Qualify | null;
- getAttrByPath(): Attr.CellAttrs;
- getAttrByPath<T>(path: string | string[]): T;
- setAttrByPath(path: string | string[], value: Attr.ComplexAttrValue, options?: Cell.SetOptions): this;
- removeAttrByPath(path: string | string[], options?: Cell.SetOptions): this;
- protected prefixAttrPath(path: string | string[]): string | string[];
- attr(): Attr.CellAttrs;
- attr<T>(path: string | string[]): T;
- attr(path: string | string[], value: Attr.ComplexAttrValue | null, options?: Cell.SetOptions): this;
- attr(attrs: Attr.CellAttrs, options?: Cell.SetAttrOptions): this;
- get visible(): boolean;
- set visible(value: boolean);
- setVisible(visible: boolean, options?: Cell.SetOptions): this;
- isVisible(): boolean;
- show(options?: Cell.SetOptions): this;
- hide(options?: Cell.SetOptions): this;
- toggleVisible(visible: boolean, options?: Cell.SetOptions): this;
- toggleVisible(options?: Cell.SetOptions): this;
- get data(): Properties['data'];
- set data(val: Properties['data']);
- getData<T = Properties['data']>(): T;
- setData<T = Properties['data']>(data: T, options?: Cell.SetDataOptions): this;
- replaceData<T = Properties['data']>(data: T, options?: Cell.SetOptions): this;
- updateData<T = Properties['data']>(data: T, options?: Cell.SetOptions): this;
- removeData(options?: Cell.SetOptions): this;
- get parent(): Cell | null;
- get children(): Cell<Cell.Properties>[] | null;
- getParentId(): string | undefined;
- getParent<T extends Cell = Cell>(): T | null;
- getChildren(): Cell<Cell.Properties>[] | null;
- hasParent(): boolean;
- isParentOf(child: Cell | null): boolean;
- isChildOf(parent: Cell | null): boolean;
- eachChild(iterator: (child: Cell, index: number, children: Cell[]) => void, context?: any): this;
- filterChild(filter: (cell: Cell, index: number, arr: Cell[]) => boolean, context?: any): Cell[];
- getChildCount(): number;
- getChildIndex(child: Cell): number;
- getChildAt(index: number): Cell<Cell.Properties> | null;
- getAncestors(options?: {
- deep?: boolean;
- }): Cell[];
- getDescendants(options?: Cell.GetDescendantsOptions): Cell[];
- isDescendantOf(ancestor: Cell | null, options?: {
- deep?: boolean;
- }): boolean;
- isAncestorOf(descendant: Cell | null, options?: {
- deep?: boolean;
- }): boolean;
- contains(cell: Cell | null): boolean;
- getCommonAncestor(...cells: (Cell | null | undefined)[]): Cell | null;
- setParent(parent: Cell | null, options?: Cell.SetOptions): this;
- setChildren(children: Cell[] | null, options?: Cell.SetOptions): this;
- unembed(child: Cell, options?: Cell.SetOptions): this;
- embed(child: Cell, options?: Cell.SetOptions): this;
- addTo(model: Model, options?: Cell.SetOptions): this;
- addTo(graph: Graph, options?: Cell.SetOptions): this;
- addTo(parent: Cell, options?: Cell.SetOptions): this;
- insertTo(parent: Cell, index?: number, options?: Cell.SetOptions): this;
- addChild(child: Cell | null, options?: Cell.SetOptions): this;
- insertChild(child: Cell | null, index?: number, options?: Cell.SetOptions): this;
- removeFromParent(options?: Cell.RemoveOptions): this;
- removeChild(child: Cell, options?: Cell.RemoveOptions): Cell<Cell.Properties> | null;
- removeChildAt(index: number, options?: Cell.RemoveOptions): Cell<Cell.Properties> | null;
- remove(options?: Cell.RemoveOptions): this;
- transition<K extends keyof Properties>(path: K, target: Properties[K], options?: Animation.StartOptions<Properties[K]>, delim?: string): () => void;
- transition<T extends Animation.TargetValue>(path: string | string[], target: T, options?: Animation.StartOptions<T>, delim?: string): () => void;
- stopTransition<T extends Animation.TargetValue>(path: string | string[], options?: Animation.StopOptions<T>, delim?: string): this;
- getTransitions(): string[];
- translate(tx: number, ty: number, options?: Cell.TranslateOptions): this;
- scale(sx: number, // eslint-disable-line
- sy: number, // eslint-disable-line
- origin?: Point | Point.PointLike, // eslint-disable-line
- options?: Node.SetOptions): this;
- addTools(items: Cell.ToolItem | Cell.ToolItem[], options?: Cell.AddToolOptions): void;
- addTools(items: Cell.ToolItem | Cell.ToolItem[], name: string, options?: Cell.AddToolOptions): void;
- setTools(tools?: Cell.ToolsLoose | null, options?: Cell.SetOptions): this;
- getTools(): Cell.Tools | null;
- removeTools(options?: Cell.SetOptions): this;
- hasTools(name?: string): boolean;
- hasTool(name: string): boolean;
- removeTool(name: string, options?: Cell.SetOptions): this;
- removeTool(index: number, options?: Cell.SetOptions): this;
- getBBox(options?: {
- deep?: boolean;
- }): Rectangle;
- getConnectionPoint(edge: Edge, type: Edge.TerminalType): Point;
- toJSON(options?: Cell.ToJSONOptions): this extends Node ? Node.Properties : this extends Edge ? Edge.Properties : Properties;
- clone(options?: Cell.CloneOptions): this extends Node ? Node : this extends Edge ? Edge : Cell;
- findView(graph: Graph): CellView | null;
- startBatch(name: Model.BatchName, data?: KeyValue, model?: Model | null): this;
- stopBatch(name: Model.BatchName, data?: KeyValue, model?: Model | null): this;
- batchUpdate<T>(name: Model.BatchName, execute: () => T, data?: KeyValue): T;
- dispose(): void;
- }
- export declare namespace Cell {
- interface Common {
- view?: string;
- shape?: string;
- markup?: Markup;
- attrs?: Attr.CellAttrs;
- zIndex?: number;
- visible?: boolean;
- data?: any;
- }
- interface Defaults extends Common {
- }
- interface Metadata extends Common, KeyValue {
- id?: string;
- tools?: ToolsLoose;
- }
- interface Properties extends Defaults, Metadata {
- parent?: string;
- children?: string[];
- tools?: Tools;
- }
- }
- export declare namespace Cell {
- type ToolItem = string | {
- name: string;
- args?: any;
- };
- interface Tools {
- name?: string | null;
- local?: boolean;
- items: ToolItem[];
- }
- type ToolsLoose = ToolItem | ToolItem[] | Tools;
- function normalizeTools(raw: ToolsLoose): Tools;
- }
- export declare namespace Cell {
- interface SetOptions extends Store.SetOptions {
- }
- interface MutateOptions extends Store.MutateOptions {
- }
- interface RemoveOptions extends SetOptions {
- deep?: boolean;
- }
- interface SetAttrOptions extends SetOptions {
- deep?: boolean;
- overwrite?: boolean;
- }
- interface SetDataOptions extends SetOptions {
- deep?: boolean;
- overwrite?: boolean;
- }
- interface SetByPathOptions extends Store.SetByPathOptions {
- }
- interface ToFrontOptions extends SetOptions {
- deep?: boolean;
- }
- interface ToBackOptions extends ToFrontOptions {
- }
- interface TranslateOptions extends SetOptions {
- tx?: number;
- ty?: number;
- translateBy?: string | number;
- }
- interface AddToolOptions extends SetOptions {
- reset?: boolean;
- local?: boolean;
- }
- interface GetDescendantsOptions {
- deep?: boolean;
- breadthFirst?: boolean;
- }
- interface ToJSONOptions {
- diff?: boolean;
- }
- interface CloneOptions {
- deep?: boolean;
- keepId?: boolean;
- }
- }
- export declare namespace Cell {
- export interface EventArgs {
- 'transition:start': Animation.CallbackArgs<Animation.TargetValue>;
- 'transition:progress': Animation.ProgressArgs<Animation.TargetValue>;
- 'transition:complete': Animation.CallbackArgs<Animation.TargetValue>;
- 'transition:stop': Animation.StopArgs<Animation.TargetValue>;
- 'transition:finish': Animation.CallbackArgs<Animation.TargetValue>;
- 'change:*': ChangeAnyKeyArgs;
- 'change:attrs': ChangeArgs<Attr.CellAttrs>;
- 'change:zIndex': ChangeArgs<number>;
- 'change:markup': ChangeArgs<Markup>;
- 'change:visible': ChangeArgs<boolean>;
- 'change:parent': ChangeArgs<string>;
- 'change:children': ChangeArgs<string[]>;
- 'change:tools': ChangeArgs<Tools>;
- 'change:view': ChangeArgs<string>;
- 'change:data': ChangeArgs<any>;
- 'change:size': NodeChangeArgs<Size>;
- 'change:angle': NodeChangeArgs<number>;
- 'change:position': NodeChangeArgs<Point.PointLike>;
- 'change:ports': NodeChangeArgs<PortManager.Port[]>;
- 'change:portMarkup': NodeChangeArgs<Markup>;
- 'change:portLabelMarkup': NodeChangeArgs<Markup>;
- 'change:portContainerMarkup': NodeChangeArgs<Markup>;
- 'ports:removed': {
- cell: Cell;
- node: Node;
- removed: PortManager.Port[];
- };
- 'ports:added': {
- cell: Cell;
- node: Node;
- added: PortManager.Port[];
- };
- 'change:source': EdgeChangeArgs<Edge.TerminalData>;
- 'change:target': EdgeChangeArgs<Edge.TerminalData>;
- 'change:terminal': EdgeChangeArgs<Edge.TerminalData> & {
- type: Edge.TerminalType;
- };
- 'change:router': EdgeChangeArgs<Edge.RouterData>;
- 'change:connector': EdgeChangeArgs<Edge.ConnectorData>;
- 'change:vertices': EdgeChangeArgs<Point.PointLike[]>;
- 'change:labels': EdgeChangeArgs<Edge.Label[]>;
- 'change:defaultLabel': EdgeChangeArgs<Edge.Label>;
- 'vertexs:added': {
- cell: Cell;
- edge: Edge;
- added: Point.PointLike[];
- };
- 'vertexs:removed': {
- cell: Cell;
- edge: Edge;
- removed: Point.PointLike[];
- };
- 'labels:added': {
- cell: Cell;
- edge: Edge;
- added: Edge.Label[];
- };
- 'labels:removed': {
- cell: Cell;
- edge: Edge;
- removed: Edge.Label[];
- };
- 'batch:start': {
- name: Model.BatchName;
- data: KeyValue;
- cell: Cell;
- };
- 'batch:stop': {
- name: Model.BatchName;
- data: KeyValue;
- cell: Cell;
- };
- changed: {
- cell: Cell;
- options: MutateOptions;
- };
- added: {
- cell: Cell;
- index: number;
- options: Cell.SetOptions;
- };
- removed: {
- cell: Cell;
- index: number;
- options: Cell.RemoveOptions;
- };
- }
- interface ChangeAnyKeyArgs<T extends keyof Properties = keyof Properties> {
- key: T;
- current: Properties[T];
- previous: Properties[T];
- options: MutateOptions;
- cell: Cell;
- }
- export interface ChangeArgs<T> {
- cell: Cell;
- current?: T;
- previous?: T;
- options: MutateOptions;
- }
- interface NodeChangeArgs<T> extends ChangeArgs<T> {
- node: Node;
- }
- interface EdgeChangeArgs<T> extends ChangeArgs<T> {
- edge: Edge;
- }
- export {};
- }
- export declare namespace Cell {
- const toStringTag: string;
- function isCell(instance: any): instance is Cell;
- }
- export declare namespace Cell {
- function getCommonAncestor(...cells: (Cell | null | undefined)[]): Cell | null;
- interface GetCellsBBoxOptions {
- deep?: boolean;
- }
- function getCellsBBox(cells: Cell[], options?: GetCellsBBoxOptions): Rectangle | null;
- function deepClone(cell: Cell): KeyValue<Cell<Properties>>;
- function cloneCells(cells: Cell[]): KeyValue<Cell<Properties>>;
- }
- export declare namespace Cell {
- type Definition = typeof Cell;
- type PropHook<M extends Metadata = Metadata, C extends Cell = Cell> = (this: C, metadata: M) => M;
- type PropHooks<M extends Metadata = Metadata, C extends Cell = Cell> = KeyValue<PropHook<M, C>> | PropHook<M, C> | PropHook<M, C>[];
- interface Config<M extends Metadata = Metadata, C extends Cell = Cell> extends Defaults, KeyValue {
- constructorName?: string;
- overwrite?: boolean;
- propHooks?: PropHooks<M, C>;
- attrHooks?: Attr.Definitions;
- }
- }
- export declare namespace Cell {
- }
|