@krainovsd/graph 0.14.0-beta.9 → 0.15.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.cjs +636 -375
- package/lib/cjs/index.cjs.map +1 -1
- package/lib/esm/constants/force-controls.js +6 -4
- package/lib/esm/constants/force-controls.js.map +1 -1
- package/lib/esm/constants/highlight-controls.js +6 -3
- package/lib/esm/constants/highlight-controls.js.map +1 -1
- package/lib/esm/constants/link-controls.js +6 -3
- package/lib/esm/constants/link-controls.js.map +1 -1
- package/lib/esm/constants/node-controls.js +6 -3
- package/lib/esm/constants/node-controls.js.map +1 -1
- package/lib/esm/index.js +8 -6
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/module/GraphCanvas/GraphCanvas.js +36 -17
- package/lib/esm/module/GraphCanvas/GraphCanvas.js.map +1 -1
- package/lib/esm/module/GraphCanvas/StaticGraphCanvas.js +127 -0
- package/lib/esm/module/GraphCanvas/StaticGraphCanvas.js.map +1 -0
- package/lib/esm/module/GraphCanvas/constants/graph-settings.js +6 -7
- package/lib/esm/module/GraphCanvas/constants/graph-settings.js.map +1 -1
- package/lib/esm/module/GraphCanvas/constants/highlight-settings.js +1 -4
- package/lib/esm/module/GraphCanvas/constants/highlight-settings.js.map +1 -1
- package/lib/esm/module/GraphCanvas/constants/index.js +6 -4
- package/lib/esm/module/GraphCanvas/constants/index.js.map +1 -1
- package/lib/esm/module/GraphCanvas/constants/link-settings.js +1 -9
- package/lib/esm/module/GraphCanvas/constants/link-settings.js.map +1 -1
- package/lib/esm/module/GraphCanvas/constants/node-settings.js +1 -10
- package/lib/esm/module/GraphCanvas/constants/node-settings.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/settings/force-settings-getter.js +6 -4
- package/lib/esm/module/GraphCanvas/lib/settings/force-settings-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/settings/graph-settings-getter.js +0 -3
- package/lib/esm/module/GraphCanvas/lib/settings/graph-settings-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/settings/highlight-settings-getter.js +6 -3
- package/lib/esm/module/GraphCanvas/lib/settings/highlight-settings-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/settings/link-settings-getter.js +6 -3
- package/lib/esm/module/GraphCanvas/lib/settings/link-settings-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/settings/node-settings-getter.js +20 -6
- package/lib/esm/module/GraphCanvas/lib/settings/node-settings-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/calculate-curve-link-position-by-node.js +6 -4
- package/lib/esm/module/GraphCanvas/lib/utils/calculate-curve-link-position-by-node.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/calculate-link-position-by-node.js +6 -4
- package/lib/esm/module/GraphCanvas/lib/utils/calculate-link-position-by-node.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/get-particle-position.js +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/get-particle-position.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/is-node-visible.js +25 -27
- package/lib/esm/module/GraphCanvas/lib/utils/is-node-visible.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/is-overlaps-node.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/node-by-pointer-getter.js +2 -1
- package/lib/esm/module/GraphCanvas/lib/utils/node-by-pointer-getter.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/node-highlight.js +7 -11
- package/lib/esm/module/GraphCanvas/lib/utils/node-highlight.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/node-iteration-extractor.js +3 -0
- package/lib/esm/module/GraphCanvas/lib/utils/node-iteration-extractor.js.map +1 -1
- package/lib/esm/module/GraphCanvas/lib/utils/precompute-graph.js +24 -0
- package/lib/esm/module/GraphCanvas/lib/utils/precompute-graph.js.map +1 -0
- package/lib/esm/module/GraphCanvas/lib/utils/prepare-graph-data.js +49 -0
- package/lib/esm/module/GraphCanvas/lib/utils/prepare-graph-data.js.map +1 -0
- package/lib/esm/module/GraphCanvas/slices/draw-links.js +24 -42
- package/lib/esm/module/GraphCanvas/slices/draw-links.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/draw-nodes.js +80 -168
- package/lib/esm/module/GraphCanvas/slices/draw-nodes.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/draw-text.js +1 -9
- package/lib/esm/module/GraphCanvas/slices/draw-text.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/export-svg.js +4 -5
- package/lib/esm/module/GraphCanvas/slices/export-svg.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/init-dnd.js +15 -3
- package/lib/esm/module/GraphCanvas/slices/init-dnd.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/init-draw.js +212 -8
- package/lib/esm/module/GraphCanvas/slices/init-draw.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/init-pointer.js +6 -8
- package/lib/esm/module/GraphCanvas/slices/init-pointer.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/init-simulation.js +3 -4
- package/lib/esm/module/GraphCanvas/slices/init-simulation.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/init-zoom.js +2 -4
- package/lib/esm/module/GraphCanvas/slices/init-zoom.js.map +1 -1
- package/lib/esm/module/GraphCanvas/slices/update-link-cache.js +5 -5
- package/lib/esm/module/GraphCanvas/slices/update-node-cache.js +17 -29
- package/lib/esm/module/GraphCanvas/slices/update-node-cache.js.map +1 -1
- package/lib/index.d.ts +94 -43
- package/package.json +1 -1
package/lib/index.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ import { ValueOf } from '@krainovsd/js-helpers';
|
|
|
3
3
|
import { SimulationNodeDatum, SimulationLinkDatum, Simulation } from 'd3-force';
|
|
4
4
|
import { D3DragEvent } from 'd3-drag';
|
|
5
5
|
|
|
6
|
+
declare function initDraw<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(this: GraphCanvas<NodeData, LinkData>): (recursive?: boolean) => void;
|
|
7
|
+
|
|
6
8
|
declare const COMMON_SETTINGS: {
|
|
7
9
|
nodeRadius: number;
|
|
8
10
|
nodeSize: number;
|
|
@@ -32,6 +34,21 @@ interface NodeInterface<NodeData extends Record<string, unknown>> extends Simula
|
|
|
32
34
|
type NodeShape = "circle" | "square" | "text";
|
|
33
35
|
type TextStyleEnum = "normal" | "italic" | "oblique";
|
|
34
36
|
type CachedNodeTextInterface = Record<string | number, string[] | undefined>;
|
|
37
|
+
type NodeDrawBatch = {
|
|
38
|
+
shape: NodeShape;
|
|
39
|
+
x: number;
|
|
40
|
+
y: number;
|
|
41
|
+
radius: number;
|
|
42
|
+
width: number;
|
|
43
|
+
height: number;
|
|
44
|
+
image: HTMLImageElement | undefined;
|
|
45
|
+
};
|
|
46
|
+
type NodeTextDrawBatch = {
|
|
47
|
+
text: string;
|
|
48
|
+
x: number;
|
|
49
|
+
y: number;
|
|
50
|
+
};
|
|
51
|
+
type DeferredDraw = () => void;
|
|
35
52
|
|
|
36
53
|
interface LinkInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> extends SimulationLinkDatum<NodeInterface<NodeData>> {
|
|
37
54
|
data?: LinkData;
|
|
@@ -58,11 +75,37 @@ type LinkParticle = {
|
|
|
58
75
|
_lastDistance?: number;
|
|
59
76
|
_lastTime?: number;
|
|
60
77
|
};
|
|
78
|
+
type LinkDrawBatch = {
|
|
79
|
+
curve: boolean;
|
|
80
|
+
xStart: number;
|
|
81
|
+
yStart: number;
|
|
82
|
+
xEnd: number;
|
|
83
|
+
yEnd: number;
|
|
84
|
+
xControl: number;
|
|
85
|
+
yControl: number;
|
|
86
|
+
};
|
|
87
|
+
type LinkParticleDrawBatch = {
|
|
88
|
+
x: number;
|
|
89
|
+
y: number;
|
|
90
|
+
r: number;
|
|
91
|
+
};
|
|
92
|
+
type LinkArrowDrawBatch = {
|
|
93
|
+
x: number;
|
|
94
|
+
y: number;
|
|
95
|
+
size: number;
|
|
96
|
+
angle: number;
|
|
97
|
+
};
|
|
61
98
|
|
|
62
99
|
type NodeIterationPropsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>, Return = number> = (this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, i: number, nodes: NodeInterface<NodeData>[]) => Return;
|
|
63
100
|
type LinkIterationPropsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>, Return = number> = (this: GraphCanvas<NodeData, LinkData>, link: LinkInterface<NodeData, LinkData>, i: number, links: LinkInterface<NodeData, LinkData>[]) => Return;
|
|
64
101
|
type NodeIterationPropsNoThisInterface<NodeData extends Record<string, unknown>, Return = number> = (node: NodeInterface<NodeData>, i: number, nodes: NodeInterface<NodeData>[]) => Return;
|
|
65
102
|
type LinkIterationPropsNoThisInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>, Return = number> = (link: LinkInterface<NodeData, LinkData>, i: number, links: LinkInterface<NodeData, LinkData>[]) => Return;
|
|
103
|
+
type Area = {
|
|
104
|
+
left: number;
|
|
105
|
+
right: number;
|
|
106
|
+
top: number;
|
|
107
|
+
bottom: number;
|
|
108
|
+
};
|
|
66
109
|
|
|
67
110
|
type PrecomputeForceSettingsInterface = {
|
|
68
111
|
precompute?: boolean;
|
|
@@ -123,10 +166,10 @@ type GraphSettingsInterface<NodeData extends Record<string, unknown>> = {
|
|
|
123
166
|
dragPlaceCoefficient?: (node: NodeInterface<NodeData>, pxEvent: number, pyEvent: number) => number | undefined;
|
|
124
167
|
showDrawTime?: boolean;
|
|
125
168
|
showDrawTimeEveryTick?: boolean;
|
|
169
|
+
maxFps?: number;
|
|
126
170
|
};
|
|
127
171
|
|
|
128
172
|
declare const GRAPH_SETTINGS: Required<GraphSettingsInterface<Record<string, unknown>>>;
|
|
129
|
-
declare const PERFORMANCE_GRAPH_SETTINGS: Required<GraphSettingsInterface<Record<string, unknown>>>;
|
|
130
173
|
|
|
131
174
|
type HighlightSettingsInterface = HighlighCommonSettingsInterface & HighlightByNodeForNodeSettingsInterface & HighlightByNodeForLabelSettingsInterface & HighlightByNodeForTextSettingsInterface & HighlightByNodeForLinkSettingsInterface & HighlightByNodeForArrowSettingsInterface & HighlightByLinkForNodeSettingsInterface & HighlightByLinkForTextSettingsInterface & HighlightByLinkForLabelSettingsInterface & HighlightByLinkForLinkSettingsInterface & HighlightByLinkForArrowSettingsInterface;
|
|
132
175
|
type HighlighCommonSettingsInterface = {
|
|
@@ -204,8 +247,8 @@ type HighlightByLinkForArrowSettingsInterface = {
|
|
|
204
247
|
};
|
|
205
248
|
|
|
206
249
|
declare const HIGHLIGHT_SETTINGS: Required<HighlightSettingsInterface>;
|
|
207
|
-
declare const PERFORMANCE_HIGHLIGHT_SETTINGS: Required<HighlightSettingsInterface>;
|
|
208
250
|
|
|
251
|
+
type GraphLinkSettingsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = Required<Omit<LinkSettingsInterface<NodeData, LinkData>, "options">> & Pick<LinkSettingsInterface<NodeData, LinkData>, "options">;
|
|
209
252
|
type LinkSettingsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = {
|
|
210
253
|
smartCache?: boolean;
|
|
211
254
|
prettyDraw?: boolean;
|
|
@@ -248,8 +291,6 @@ type LinkOptionsParticleInterface = {
|
|
|
248
291
|
|
|
249
292
|
declare const LINK_SETTINGS: Omit<Required<LinkSettingsInterface<Record<string, unknown>, Record<string, unknown>>>, "options">;
|
|
250
293
|
declare const LINK_OPTIONS: Omit<Required<LinkOptionsInterface<Record<string, unknown>, Record<string, unknown>>>, "color" | "width" | "drawLink" | "drawExtraLink" | "arrowColor">;
|
|
251
|
-
declare const PERFORMANCE_LINK_SETTINGS: Omit<Required<LinkSettingsInterface<Record<string, unknown>, Record<string, unknown>>>, "options">;
|
|
252
|
-
declare const PERFORMANCE_LINK_OPTIONS: Omit<Required<LinkOptionsInterface<Record<string, unknown>, Record<string, unknown>>>, "color" | "width" | "drawLink" | "drawExtraLink" | "arrowColor">;
|
|
253
294
|
|
|
254
295
|
type NodeSettingsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = {
|
|
255
296
|
smartCache?: boolean;
|
|
@@ -275,7 +316,10 @@ type NodeSettingsInterface<NodeData extends Record<string, unknown>, LinkData ex
|
|
|
275
316
|
textShiftYMax?: number;
|
|
276
317
|
idGetter?: NodeIterationPropsInterface<NodeData, LinkData, string | number>;
|
|
277
318
|
options?: NodeIterationPropsInterface<NodeData, LinkData, NodeOptionsInterface<NodeData, LinkData>> | NodeOptionsInterface<NodeData, LinkData>;
|
|
319
|
+
text?: NodeIterationPropsInterface<NodeData, LinkData, string | null> | string | null;
|
|
320
|
+
label?: NodeIterationPropsInterface<NodeData, LinkData, string | null> | string | null;
|
|
278
321
|
};
|
|
322
|
+
type GraphNodeSettingsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = Required<Omit<NodeSettingsInterface<NodeData, LinkData>, "options" | "label" | "text">> & Pick<NodeSettingsInterface<NodeData, LinkData>, "options" | "label" | "text">;
|
|
279
323
|
type NodeOptionsInterface<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = {
|
|
280
324
|
nodeDraw?: ((this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, options: Required<NodeOptionsInterface<NodeData, LinkData>>) => void) | null;
|
|
281
325
|
textDraw?: ((this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, options: Required<NodeOptionsInterface<NodeData, LinkData>>) => void) | null;
|
|
@@ -294,8 +338,6 @@ type NodeOptionsNodeInterface = {
|
|
|
294
338
|
borderWidth?: number;
|
|
295
339
|
};
|
|
296
340
|
type NodeOptionsTextInterface = {
|
|
297
|
-
textVisible?: boolean;
|
|
298
|
-
text?: string | null;
|
|
299
341
|
textColor?: string;
|
|
300
342
|
textSize?: number;
|
|
301
343
|
textAlpha?: number;
|
|
@@ -320,13 +362,10 @@ type NodeOptionsLabelInterface = {
|
|
|
320
362
|
labelStyle?: TextStyleEnum;
|
|
321
363
|
labelWeight?: number;
|
|
322
364
|
labelGap?: number;
|
|
323
|
-
label?: string | null;
|
|
324
365
|
};
|
|
325
366
|
|
|
326
|
-
declare const NODE_SETTINGS: Omit<Required<NodeSettingsInterface<Record<string, unknown>, Record<string, unknown>>>, "options" | "idGetter">;
|
|
367
|
+
declare const NODE_SETTINGS: Omit<Required<NodeSettingsInterface<Record<string, unknown>, Record<string, unknown>>>, "options" | "idGetter" | "text" | "label">;
|
|
327
368
|
declare const NODE_OPTIONS: Omit<Required<NodeOptionsInterface<Record<string, unknown>, Record<string, unknown>>>, "color" | "text" | "textVisible" | "textSize" | "textShiftY" | "nodeDraw" | "nodeExtraDraw" | "textDraw" | "textExtraDraw">;
|
|
328
|
-
declare const PERFORMANCE_NODE_SETTINGS: Omit<Required<NodeSettingsInterface<Record<string, unknown>, Record<string, unknown>>>, "options" | "idGetter">;
|
|
329
|
-
declare const PERFOMANCE_NODE_OPTIONS: Omit<Required<NodeOptionsInterface<Record<string, unknown>, Record<string, unknown>>>, "color" | "text" | "textVisible" | "textSize" | "textShiftY" | "nodeDraw" | "nodeExtraDraw" | "textDraw" | "textExtraDraw">;
|
|
330
369
|
|
|
331
370
|
declare const GRAPH_CACHE_TYPE: {
|
|
332
371
|
readonly NodeOptions: "nodeOptions";
|
|
@@ -370,6 +409,10 @@ type GraphCanvasInterface<NodeData extends Record<string, unknown>, LinkData ext
|
|
|
370
409
|
type GraphCanvasSimulation<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = Simulation<NodeInterface<NodeData>, LinkInterface<NodeData, LinkData>>;
|
|
371
410
|
type GraphCanvasCacheKeys = ValueOf<typeof GRAPH_CACHE_TYPE>;
|
|
372
411
|
|
|
412
|
+
declare function getDrawLink<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(linkBatch: Record<string, LinkDrawBatch[]>, particleBatch: Record<string, LinkParticleDrawBatch[]>, arrowBatch: Record<string, LinkArrowDrawBatch[]>, now: number): (this: GraphCanvas<NodeData, LinkData>, link: LinkInterface<NodeData, LinkData>, index: number) => void;
|
|
413
|
+
|
|
414
|
+
declare function getDrawNode<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(nodeBatch: Record<string, NodeDrawBatch[]>, nodeImageBatch: Record<string, NodeDrawBatch[]>, textBatch: Record<string, Record<string, NodeTextDrawBatch[]>>, deferredNodeRender: DeferredDraw[], deferredTextRender: DeferredDraw[], area: Area): (this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, index: number) => void;
|
|
415
|
+
|
|
373
416
|
declare class GraphCanvas<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> {
|
|
374
417
|
/** initial data */
|
|
375
418
|
protected nodes: NodeInterface<NodeData>[];
|
|
@@ -384,8 +427,8 @@ declare class GraphCanvas<NodeData extends Record<string, unknown>, LinkData ext
|
|
|
384
427
|
protected graphSettings: Required<GraphSettingsInterface<NodeData>>;
|
|
385
428
|
protected forceSettings: Required<ForceSettingsInterface<NodeData, LinkData>>;
|
|
386
429
|
protected highlightSettings: Required<HighlightSettingsInterface>;
|
|
387
|
-
protected nodeSettings:
|
|
388
|
-
protected linkSettings:
|
|
430
|
+
protected nodeSettings: GraphNodeSettingsInterface<NodeData, LinkData>;
|
|
431
|
+
protected linkSettings: GraphLinkSettingsInterface<NodeData, LinkData>;
|
|
389
432
|
protected listeners: ListenersInterface<NodeData, LinkData>;
|
|
390
433
|
/** service */
|
|
391
434
|
protected context: CanvasRenderingContext2D | null | undefined;
|
|
@@ -393,6 +436,7 @@ declare class GraphCanvas<NodeData extends Record<string, unknown>, LinkData ext
|
|
|
393
436
|
protected areaTransform: ZoomTransform;
|
|
394
437
|
protected _translateExtent: [[number, number], [number, number]] | undefined;
|
|
395
438
|
protected draw: (this: GraphCanvas<NodeData, LinkData>) => void;
|
|
439
|
+
protected instantDraw: (this: GraphCanvas<NodeData, LinkData>) => void;
|
|
396
440
|
protected eventAbortController: AbortController;
|
|
397
441
|
protected cachedNodeText: (string[] | undefined)[];
|
|
398
442
|
protected cachedNodeLabel: (string[] | undefined)[];
|
|
@@ -431,10 +475,10 @@ declare class GraphCanvas<NodeData extends Record<string, unknown>, LinkData ext
|
|
|
431
475
|
clearCache: (keys: boolean | GraphCanvasCacheKeys[]) => void;
|
|
432
476
|
tick: () => void;
|
|
433
477
|
restart: (alpha?: number, options?: Partial<PrecomputeForceSettingsInterface>) => void;
|
|
434
|
-
start: () => void;
|
|
435
|
-
stop: () => void;
|
|
436
478
|
create: () => void;
|
|
437
479
|
destroy: () => void;
|
|
480
|
+
precompute: () => void;
|
|
481
|
+
protected initSmartDraw: (draw: ReturnType<typeof initDraw>) => () => void;
|
|
438
482
|
protected getPointerAreaPosition: (event: MouseEvent | TouchEvent) => number[];
|
|
439
483
|
protected clearHTMLElements: () => void;
|
|
440
484
|
protected updateSimulation: (precompute?: boolean) => void;
|
|
@@ -445,18 +489,32 @@ declare class GraphCanvas<NodeData extends Record<string, unknown>, LinkData ext
|
|
|
445
489
|
protected animateZoom: (area: HTMLCanvasElement, target: ZoomTransform, start: ZoomTransform, duration: number) => void;
|
|
446
490
|
}
|
|
447
491
|
|
|
492
|
+
declare class StaticGraphCanvas<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> extends GraphCanvas<NodeData, LinkData> {
|
|
493
|
+
protected get simulationWorking(): boolean;
|
|
494
|
+
protected _rafTickId: number | undefined;
|
|
495
|
+
protected init: () => void;
|
|
496
|
+
tick: () => void;
|
|
497
|
+
restart: () => void;
|
|
498
|
+
changeData: (options: Pick<Partial<GraphCanvasInterface<NodeData, LinkData>>, "links" | "nodes">, _alpha?: number, clearCache?: boolean | GraphCanvasCacheKeys[]) => void;
|
|
499
|
+
changeSettings: (options: Omit<Partial<GraphCanvasInterface<NodeData, LinkData>>, "links" | "nodes" | "listeners" | "forceSettings">, clearCache?: boolean | GraphCanvasCacheKeys[]) => undefined;
|
|
500
|
+
destroy: () => void;
|
|
501
|
+
protected updateData: (_alpha?: number, clearCache?: boolean | GraphCanvasCacheKeys[]) => void;
|
|
502
|
+
}
|
|
503
|
+
|
|
448
504
|
declare function forceSettingsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: ForceSettingsInterface<NodeData, LinkData> | undefined, prevSettings?: Required<ForceSettingsInterface<NodeData, LinkData>>): Required<ForceSettingsInterface<NodeData, LinkData>>;
|
|
449
505
|
|
|
450
506
|
declare function graphSettingsGetter<NodeData extends Record<string, unknown>>(settings: GraphSettingsInterface<NodeData> | undefined, prevSettings?: Required<GraphSettingsInterface<NodeData>>): Required<GraphSettingsInterface<NodeData>>;
|
|
451
507
|
|
|
452
|
-
declare function linkSettingsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: LinkSettingsInterface<NodeData, LinkData> | undefined, prevSettings?:
|
|
508
|
+
declare function linkSettingsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: LinkSettingsInterface<NodeData, LinkData> | undefined, prevSettings?: GraphLinkSettingsInterface<NodeData, LinkData>): GraphLinkSettingsInterface<NodeData, LinkData>;
|
|
453
509
|
declare function linkOptionsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(this: GraphCanvas<NodeData, LinkData>): Required<LinkOptionsInterface<NodeData, LinkData>>;
|
|
454
510
|
|
|
455
511
|
declare function listenersGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: ListenersInterface<NodeData, LinkData> | undefined): ListenersInterface<NodeData, LinkData>;
|
|
456
512
|
|
|
457
|
-
declare function nodeSettingsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: NodeSettingsInterface<NodeData, LinkData> | undefined, prevNodeSettings?:
|
|
513
|
+
declare function nodeSettingsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(settings: NodeSettingsInterface<NodeData, LinkData> | undefined, prevNodeSettings?: GraphNodeSettingsInterface<NodeData, LinkData>): GraphNodeSettingsInterface<NodeData, LinkData>;
|
|
458
514
|
declare function nodeOptionsGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>): Required<NodeOptionsInterface<NodeData, LinkData>>;
|
|
459
|
-
declare function
|
|
515
|
+
declare function nodeTextGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, index: number): Required<string | null>;
|
|
516
|
+
declare function nodeLabelGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(this: GraphCanvas<NodeData, LinkData>, node: NodeInterface<NodeData>, index: number): Required<string | null>;
|
|
517
|
+
declare function nodeTextSizeGetter<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(transform: ZoomTransform | undefined, nodeSettings: GraphNodeSettingsInterface<NodeData, LinkData>): {
|
|
460
518
|
textSize: number;
|
|
461
519
|
textShiftY: number;
|
|
462
520
|
};
|
|
@@ -499,6 +557,13 @@ interface GraphBounds {
|
|
|
499
557
|
}
|
|
500
558
|
declare function computeGraphBounds<NodeData extends Record<string, unknown>>(nodes: NodeInterface<NodeData>[]): GraphBounds | null;
|
|
501
559
|
|
|
560
|
+
type PrepareGraphOptions<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = {
|
|
561
|
+
nodes: NodeInterface<NodeData>[];
|
|
562
|
+
links: LinkInterface<NodeData, LinkData>[];
|
|
563
|
+
neighbors?: boolean;
|
|
564
|
+
};
|
|
565
|
+
declare function prepareGraph<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(opts: PrepareGraphOptions<NodeData, LinkData>): void;
|
|
566
|
+
|
|
502
567
|
declare function pointerGetter(mouseEvent: MouseEvent | TouchEvent, areaRect: DOMRect | undefined, areaTransform: ZoomTransform): number[];
|
|
503
568
|
|
|
504
569
|
declare function dragPlaceCoefficientGetter<NodeData extends Record<string, unknown>>(node: NodeInterface<NodeData>, pointerX: number, pointerY: number): number | undefined;
|
|
@@ -530,13 +595,7 @@ declare function calculateLinkPositionByNode<NodeData extends Record<string, unk
|
|
|
530
595
|
|
|
531
596
|
declare function animationByProgress(initial: number, additional: number, progress: number): number;
|
|
532
597
|
|
|
533
|
-
|
|
534
|
-
width: number;
|
|
535
|
-
height: number;
|
|
536
|
-
transform: ZoomTransform;
|
|
537
|
-
node: NodeInterface<NodeData>;
|
|
538
|
-
};
|
|
539
|
-
declare function isNodeVisible<NodeData extends Record<string, unknown>>(opts: IsNodeVisibleOptions<NodeData>): boolean;
|
|
598
|
+
declare function isNodeVisible<NodeData extends Record<string, unknown>>(node: NodeInterface<NodeData>, area: Area): boolean;
|
|
540
599
|
|
|
541
600
|
type GetParticlePositionOptions = {
|
|
542
601
|
particle: LinkParticle;
|
|
@@ -549,6 +608,7 @@ type GetParticlePositionOptions = {
|
|
|
549
608
|
distance: number;
|
|
550
609
|
totalCount: number;
|
|
551
610
|
speed: number;
|
|
611
|
+
now: number;
|
|
552
612
|
};
|
|
553
613
|
declare function getParticlePosition(opts: GetParticlePositionOptions): void;
|
|
554
614
|
declare function approximateQuadraticBezierLength(x0: number, y0: number, x1: number, y1: number, x2: number, y2: number): number;
|
|
@@ -648,24 +708,15 @@ declare function extractLinkPointIds<NodeData extends Record<string, unknown>, L
|
|
|
648
708
|
|
|
649
709
|
declare function isEmptyObject(obj: Record<string, unknown>): boolean;
|
|
650
710
|
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
y: number;
|
|
659
|
-
textSize: number;
|
|
660
|
-
textStyle: TextStyleEnum;
|
|
661
|
-
textWeight: number;
|
|
662
|
-
textFont: string;
|
|
663
|
-
textColor: string;
|
|
664
|
-
textGap: number;
|
|
665
|
-
textAlign: CanvasTextAlign;
|
|
666
|
-
context: CanvasRenderingContext2D;
|
|
711
|
+
type PrecomputeGraphOptions<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>> = {
|
|
712
|
+
nodes: NodeInterface<NodeData>[];
|
|
713
|
+
links: LinkInterface<NodeData, LinkData>[];
|
|
714
|
+
forceSettings?: ForceSettingsInterface<NodeData, LinkData>;
|
|
715
|
+
nodeSettings?: NodeSettingsInterface<NodeData, LinkData>;
|
|
716
|
+
linkSettings?: LinkSettingsInterface<NodeData, LinkData>;
|
|
717
|
+
maxMs?: number;
|
|
667
718
|
};
|
|
668
|
-
declare function
|
|
719
|
+
declare function precomputeGraph<NodeData extends Record<string, unknown>, LinkData extends Record<string, unknown>>(opts: PrecomputeGraphOptions<NodeData, LinkData>): void;
|
|
669
720
|
|
|
670
721
|
type GraphSettingsInputRange<I extends string> = {
|
|
671
722
|
type: "range";
|
|
@@ -748,5 +799,5 @@ declare const NODE_OPTIONS_NODE_CONTROLS: GraphSettingsInputInterface<keyof Node
|
|
|
748
799
|
declare const NODE_OPTIONS_TEXT_CONTROLS: GraphSettingsInputInterface<keyof NodeOptionsTextInterface>[];
|
|
749
800
|
declare const NODE_OPTIONS_LABEL_CONTROLS: GraphSettingsInputInterface<keyof NodeOptionsLabelInterface>[];
|
|
750
801
|
|
|
751
|
-
export { COMMON_SETTINGS, FORCE_CONTROLS, FORCE_SETTINGS, GRAPH_CACHE_TYPE, GRAPH_SETTINGS, GraphCanvas, HIGHLIGHT_BY_LINK_FOR_ARROW_CONTROLS, HIGHLIGHT_BY_LINK_FOR_LABEL_CONTROLS, HIGHLIGHT_BY_LINK_FOR_LINK_CONTROLS, HIGHLIGHT_BY_LINK_FOR_NODE_CONTROLS, HIGHLIGHT_BY_LINK_FOR_TEXT_CONTROLS, HIGHLIGHT_BY_NODE_FOR_ARROW_CONTROLS, HIGHLIGHT_BY_NODE_FOR_LABEL_CONTROLS, HIGHLIGHT_BY_NODE_FOR_LINK_CONTROLS, HIGHLIGHT_BY_NODE_FOR_NODE_CONTROLS, HIGHLIGHT_BY_NODE_FOR_TEXT_CONTROLS, HIGHLIGHT_COMMON_CONTROLS, HIGHLIGHT_SETTINGS, LINK_OPTIONS, LINK_OPTIONS_ARROW_CONTROLS, LINK_OPTIONS_LINK_CONTROLS, LINK_OPTIONS_PARTICLE_CONTROLS, LINK_SETTINGS, LINK_SETTINGS_CONTROLS, NODE_OPTIONS, NODE_OPTIONS_LABEL_CONTROLS, NODE_OPTIONS_NODE_CONTROLS, NODE_OPTIONS_TEXT_CONTROLS, NODE_SETTINGS, NODE_SETTINGS_CONTROLS,
|
|
752
|
-
export type { CachedNodeTextInterface, DragEventInterface, ForceSettingsInterface, GraphBounds, GraphCanvasCacheKeys, GraphCanvasInterface, GraphCanvasSimulation, GraphSettingsInputInterface, GraphSettingsInterface, HighlighCommonSettingsInterface, HighlightByLinkForArrowSettingsInterface, HighlightByLinkForLabelSettingsInterface, HighlightByLinkForLinkSettingsInterface, HighlightByLinkForNodeSettingsInterface, HighlightByLinkForTextSettingsInterface, HighlightByNodeForArrowSettingsInterface, HighlightByNodeForLabelSettingsInterface, HighlightByNodeForLinkSettingsInterface, HighlightByNodeForNodeSettingsInterface, HighlightByNodeForTextSettingsInterface, HighlightSettingsInterface, LinkByPointerGetterOptions, LinkInterface, LinkIterationPropsInterface, LinkIterationPropsNoThisInterface, LinkOptionsArrowInterface, LinkOptionsInterface, LinkOptionsLinkInterface, LinkOptionsParticleInterface, LinkParticle, LinkSettingsInterface, ListenersInterface, NodeByPointerGetterOptions, NodeInterface, NodeIterationPropsInterface, NodeIterationPropsNoThisInterface, NodeOptionsInterface, NodeOptionsLabelInterface, NodeOptionsNodeInterface, NodeOptionsTextInterface, NodeRadiusGetterOptions, NodeSettingsInterface, NodeShape, NodeSizeGetterOptions, PrecomputeForceSettingsInterface, RGB, TextStyleEnum, ZoomEventInterface };
|
|
802
|
+
export { COMMON_SETTINGS, FORCE_CONTROLS, FORCE_SETTINGS, GRAPH_CACHE_TYPE, GRAPH_SETTINGS, GraphCanvas, HIGHLIGHT_BY_LINK_FOR_ARROW_CONTROLS, HIGHLIGHT_BY_LINK_FOR_LABEL_CONTROLS, HIGHLIGHT_BY_LINK_FOR_LINK_CONTROLS, HIGHLIGHT_BY_LINK_FOR_NODE_CONTROLS, HIGHLIGHT_BY_LINK_FOR_TEXT_CONTROLS, HIGHLIGHT_BY_NODE_FOR_ARROW_CONTROLS, HIGHLIGHT_BY_NODE_FOR_LABEL_CONTROLS, HIGHLIGHT_BY_NODE_FOR_LINK_CONTROLS, HIGHLIGHT_BY_NODE_FOR_NODE_CONTROLS, HIGHLIGHT_BY_NODE_FOR_TEXT_CONTROLS, HIGHLIGHT_COMMON_CONTROLS, HIGHLIGHT_SETTINGS, LINK_OPTIONS, LINK_OPTIONS_ARROW_CONTROLS, LINK_OPTIONS_LINK_CONTROLS, LINK_OPTIONS_PARTICLE_CONTROLS, LINK_SETTINGS, LINK_SETTINGS_CONTROLS, NODE_OPTIONS, NODE_OPTIONS_LABEL_CONTROLS, NODE_OPTIONS_NODE_CONTROLS, NODE_OPTIONS_TEXT_CONTROLS, NODE_SETTINGS, NODE_SETTINGS_CONTROLS, PERFORMANCE_FORCE_SETTINGS, StaticGraphCanvas, animationByProgress, approximateQuadraticBezierLength, calculateLinkPositionByNode, colorGetter, colorToRgb, computeGraphBounds, dragPlaceCoefficientGetter, extractLinkPointIds, extractRgb, fadeRgb, forceSettingsGetter, getDrawLink, getDrawNode, getParticlePosition, graphSettingsGetter, highlightSettingsGetter, isEmptyObject, isNodeVisible, isOverlapsNode, linkByPointerGetter, linkFade, linkHighlight, linkIterationExtractor, linkOptionsGetter, linkSettingsGetter, listenersGetter, nodeByPointerGetter, nodeFade, nodeHighlight, nodeIdGetter, nodeIterationExtractor, nodeLabelGetter, nodeOptionsGetter, nodeRadiusGetter, nodeSettingsGetter, nodeSizeGetter, nodeTextGetter, nodeTextSizeGetter, pointerGetter, precomputeGraph, prepareGraph, rgbAnimationByProgress };
|
|
803
|
+
export type { Area, CachedNodeTextInterface, DeferredDraw, DragEventInterface, ForceSettingsInterface, GraphBounds, GraphCanvasCacheKeys, GraphCanvasInterface, GraphCanvasSimulation, GraphLinkSettingsInterface, GraphNodeSettingsInterface, GraphSettingsInputInterface, GraphSettingsInterface, HighlighCommonSettingsInterface, HighlightByLinkForArrowSettingsInterface, HighlightByLinkForLabelSettingsInterface, HighlightByLinkForLinkSettingsInterface, HighlightByLinkForNodeSettingsInterface, HighlightByLinkForTextSettingsInterface, HighlightByNodeForArrowSettingsInterface, HighlightByNodeForLabelSettingsInterface, HighlightByNodeForLinkSettingsInterface, HighlightByNodeForNodeSettingsInterface, HighlightByNodeForTextSettingsInterface, HighlightSettingsInterface, LinkArrowDrawBatch, LinkByPointerGetterOptions, LinkDrawBatch, LinkInterface, LinkIterationPropsInterface, LinkIterationPropsNoThisInterface, LinkOptionsArrowInterface, LinkOptionsInterface, LinkOptionsLinkInterface, LinkOptionsParticleInterface, LinkParticle, LinkParticleDrawBatch, LinkSettingsInterface, ListenersInterface, NodeByPointerGetterOptions, NodeDrawBatch, NodeInterface, NodeIterationPropsInterface, NodeIterationPropsNoThisInterface, NodeOptionsInterface, NodeOptionsLabelInterface, NodeOptionsNodeInterface, NodeOptionsTextInterface, NodeRadiusGetterOptions, NodeSettingsInterface, NodeShape, NodeSizeGetterOptions, NodeTextDrawBatch, PrecomputeForceSettingsInterface, RGB, TextStyleEnum, ZoomEventInterface };
|