@html-graph/html-graph 2.5.0 → 3.1.0

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/README.md CHANGED
@@ -49,7 +49,10 @@ function createNode({ name, x, y, frontPortId, backPortId }) {
49
49
  };
50
50
  }
51
51
 
52
+ const element = document.getElementById("canvas");
53
+
52
54
  const canvas = new CanvasBuilder()
55
+ .setElement(element)
53
56
  .setDefaults({
54
57
  edges: {
55
58
  shape: {
@@ -59,17 +62,9 @@ const canvas = new CanvasBuilder()
59
62
  })
60
63
  .enableUserDraggableNodes()
61
64
  .enableUserTransformableViewport()
62
- .enableVirtualScroll({
63
- nodeContainingRadius: {
64
- horizontal: 25,
65
- vertical: 25,
66
- },
67
- })
68
- .enableResizeReactiveNodes()
69
65
  .build();
70
66
 
71
67
  canvas
72
- .attach(document.getElementById("canvas"))
73
68
  .addNode(
74
69
  createNode({
75
70
  name: "Node 1",
@@ -14,14 +14,6 @@ declare interface AddEdgeRequest_2 {
14
14
  readonly priority: number;
15
15
  }
16
16
 
17
- declare interface AddEdgeRequest_3 {
18
- readonly id: unknown;
19
- readonly from: unknown;
20
- readonly to: unknown;
21
- readonly shape: EdgeShape;
22
- readonly priority: number;
23
- }
24
-
25
17
  export declare type AddNodePorts = Iterable<MarkNodePortRequest>;
26
18
 
27
19
  export declare interface AddNodeRequest {
@@ -43,15 +35,6 @@ declare interface AddNodeRequest_2 {
43
35
  readonly priority: number;
44
36
  }
45
37
 
46
- declare interface AddNodeRequest_3 {
47
- readonly id: unknown;
48
- readonly element: HTMLElement;
49
- readonly x: number;
50
- readonly y: number;
51
- readonly centerFn: CenterFn;
52
- readonly priority: number;
53
- }
54
-
55
38
  declare interface AddPortRequest {
56
39
  readonly id: unknown;
57
40
  readonly nodeId: unknown;
@@ -98,11 +81,9 @@ declare type BezierEdgeShapeConfig = {
98
81
 
99
82
  export declare class Canvas {
100
83
  readonly element: HTMLElement;
101
- private readonly controller;
102
- private readonly nodeIdGenerator;
103
- private readonly portIdGenerator;
104
- private readonly edgeIdGenerator;
105
- private readonly defaults;
84
+ private readonly graphStore;
85
+ private readonly viewportStore;
86
+ private readonly htmlView;
106
87
  /**
107
88
  * provides api for accessing graph model
108
89
  */
@@ -111,20 +92,25 @@ export declare class Canvas {
111
92
  * provides api for accessing viewport state
112
93
  */
113
94
  readonly viewport: Viewport;
114
- constructor(element: HTMLElement, controller: CanvasController, options: CanvasDefaults);
115
- /**
116
- * @deprecated
117
- * use CanvasBuilder.attach instead
118
- * attaches canvas to given element
119
- * detaches element first when canvas is attached
120
- */
121
- attach(element: HTMLElement): Canvas;
122
- /**
123
- * @deprecated
124
- * attach canvas once instead, then reattach wrapper element
125
- * detaches canvas from element when attached
126
- */
127
- detach(): Canvas;
95
+ private readonly defaults;
96
+ private readonly nodeIdGenerator;
97
+ private readonly portIdGenerator;
98
+ private readonly edgeIdGenerator;
99
+ private readonly onAfterNodeAdded;
100
+ private readonly onAfterNodeUpdated;
101
+ private readonly onAfterNodePriorityUpdated;
102
+ private readonly onBeforeNodeRemoved;
103
+ private readonly onAfterPortUpdated;
104
+ private readonly onBeforePortUnmarked;
105
+ private readonly onAfterEdgeAdded;
106
+ private readonly onAfterEdgeShapeUpdated;
107
+ private readonly onAfterEdgeUpdated;
108
+ private readonly onAfterEdgePriorityUpdated;
109
+ private readonly onBeforeEdgeRemoved;
110
+ private readonly onBeforeClear;
111
+ private readonly onBeforeDestroyEmitter;
112
+ readonly onBeforeDestroy: EventHandler<void>;
113
+ constructor(element: HTMLElement, graphStore: GraphStore, viewportStore: ViewportStore, htmlView: HtmlView, options: CanvasDefaults);
128
114
  /**
129
115
  * adds node to graph
130
116
  */
@@ -194,16 +180,11 @@ export declare class CanvasBuilder {
194
180
  private hasTransformableViewport;
195
181
  private hasResizeReactiveNodes;
196
182
  private boxRenderingTrigger;
197
- attach(element: HTMLElement): CanvasBuilder;
183
+ setElement(element: HTMLElement): CanvasBuilder;
198
184
  /**
199
185
  * specifies default values for graph entities
200
186
  */
201
187
  setDefaults(defaults: CanvasDefaults): CanvasBuilder;
202
- /**
203
- * @deprecated
204
- * use setDefaults instead
205
- */
206
- setOptions(options: CanvasDefaults): CanvasBuilder;
207
188
  /**
208
189
  * enables nodes draggable by user
209
190
  */
@@ -228,33 +209,7 @@ export declare class CanvasBuilder {
228
209
  private reset;
229
210
  }
230
211
 
231
- declare interface CanvasController {
232
- readonly graph: Graph;
233
- readonly viewport: Viewport;
234
- /**
235
- * @deprecated
236
- */
237
- attach(element: HTMLElement): void;
238
- /**
239
- * @deprecated
240
- */
241
- detach(): void;
242
- addNode(node: AddNodeRequest_3): void;
243
- updateNode(nodeId: unknown, request: UpdateNodeRequest_3): void;
244
- removeNode(nodeId: unknown): void;
245
- markPort(port: MarkPortRequest_2): void;
246
- updatePort(portId: unknown, request: UpdatePortRequest_3): void;
247
- unmarkPort(portId: unknown): void;
248
- addEdge(edge: AddEdgeRequest_3): void;
249
- updateEdge(edgeId: unknown, request: UpdateEdgeRequest_3): void;
250
- removeEdge(edgeId: unknown): void;
251
- patchViewportMatrix(request: PatchMatrixRequest_2): void;
252
- patchContentMatrix(request: PatchMatrixRequest_2): void;
253
- clear(): void;
254
- destroy(): void;
255
- }
256
-
257
- declare interface CanvasDefaults {
212
+ export declare interface CanvasDefaults {
258
213
  /**
259
214
  * nodes related behavior
260
215
  */
@@ -292,8 +247,6 @@ declare interface CanvasDefaults {
292
247
  readonly priority?: Priority;
293
248
  };
294
249
  }
295
- export { CanvasDefaults }
296
- export { CanvasDefaults as CoreOptions }
297
250
 
298
251
  export declare type CenterFn = (width: number, height: number) => Point;
299
252
 
@@ -368,40 +321,15 @@ export declare class EventSubject<T> implements EventEmitter<T>, EventHandler<T>
368
321
  export declare class Graph {
369
322
  private readonly graphStore;
370
323
  readonly onAfterNodeAdded: EventHandler<unknown>;
371
- /**
372
- * @deprecated
373
- * use onAfterNodeUpdated instead
374
- */
375
- readonly onAfterNodeCoordinatesUpdated: EventHandler<unknown>;
376
324
  readonly onAfterNodeUpdated: EventHandler<unknown>;
377
325
  readonly onAfterNodePriorityUpdated: EventHandler<unknown>;
378
326
  readonly onBeforeNodeRemoved: EventHandler<unknown>;
379
327
  readonly onAfterPortMarked: EventHandler<unknown>;
380
- /**
381
- * @deprecated
382
- * use onAfterPortMarked instead
383
- */
384
- readonly onAfterPortAdded: EventHandler<unknown>;
385
328
  readonly onAfterPortUpdated: EventHandler<unknown>;
386
- /**
387
- * @deprecated
388
- * use onAfterPortUpdated instead
389
- */
390
- readonly onAfterPortDirectionUpdated: EventHandler<unknown>;
391
329
  readonly onBeforePortUnmarked: EventHandler<unknown>;
392
- /**
393
- * @deprecated
394
- * use onBeforePortUnmarked instead
395
- */
396
- readonly onBeforePortRemoved: EventHandler<unknown>;
397
330
  readonly onAfterEdgeAdded: EventHandler<unknown>;
398
331
  readonly onAfterEdgeShapeUpdated: EventHandler<unknown>;
399
332
  readonly onAfterEdgeUpdated: EventHandler<unknown>;
400
- /**
401
- * @deprecated
402
- * use onAfterEdgeUpdated instead
403
- */
404
- readonly onAfterEdgeAdjacentPortsUpdated: EventHandler<unknown>;
405
333
  readonly onAfterEdgePriorityUpdated: EventHandler<unknown>;
406
334
  readonly onBeforeEdgeRemoved: EventHandler<unknown>;
407
335
  readonly onBeforeClear: EventHandler<void>;
@@ -411,11 +339,6 @@ export declare class Graph {
411
339
  getPort(portId: unknown): GraphPort | null;
412
340
  getAllPortIds(): readonly unknown[];
413
341
  getNodePortIds(nodeId: unknown): readonly unknown[] | null;
414
- /**
415
- * @deprecated
416
- * use graph.getPort()?.nodeId ?? null instead
417
- */
418
- getPortNodeId(portId: unknown): unknown | null;
419
342
  getAllEdgeIds(): readonly unknown[];
420
343
  getEdge(edgeId: unknown): GraphEdge | null;
421
344
  getPortIncomingEdgeIds(portId: unknown): readonly unknown[] | null;
@@ -555,6 +478,20 @@ export declare class HtmlGraphError extends Error {
555
478
  readonly name = "HtmlGraphError";
556
479
  }
557
480
 
481
+ declare interface HtmlView {
482
+ attachNode(nodeId: unknown): void;
483
+ detachNode(nodeId: unknown): void;
484
+ attachEdge(edgeId: unknown): void;
485
+ detachEdge(edgeId: unknown): void;
486
+ clear(): void;
487
+ destroy(): void;
488
+ updateNodePosition(nodeId: unknown): void;
489
+ updateNodePriority(nodeId: unknown): void;
490
+ updateEdgeShape(edgeId: unknown): void;
491
+ renderEdge(edgeId: unknown): void;
492
+ updateEdgePriority(edgeId: unknown): void;
493
+ }
494
+
558
495
  declare type IncrementalPriority = "incremental";
559
496
 
560
497
  export declare type MarkNodePortRequest = {
@@ -570,13 +507,6 @@ export declare interface MarkPortRequest {
570
507
  readonly direction?: number;
571
508
  }
572
509
 
573
- declare interface MarkPortRequest_2 {
574
- readonly id: unknown;
575
- readonly element: HTMLElement;
576
- readonly nodeId: unknown;
577
- readonly direction: number;
578
- }
579
-
580
510
  export declare interface NodeDragPayload {
581
511
  readonly nodeId: unknown;
582
512
  readonly element: HTMLElement;
@@ -599,12 +529,6 @@ export declare interface PatchMatrixRequest {
599
529
  readonly y?: number | undefined;
600
530
  }
601
531
 
602
- declare interface PatchMatrixRequest_2 {
603
- readonly scale?: number | undefined;
604
- readonly x?: number | undefined;
605
- readonly y?: number | undefined;
606
- }
607
-
608
532
  declare interface PatchTransformRequest {
609
533
  readonly scale?: number;
610
534
  readonly x?: number;
@@ -751,13 +675,6 @@ declare interface UpdateEdgeRequest_2 {
751
675
  readonly priority?: number;
752
676
  }
753
677
 
754
- declare interface UpdateEdgeRequest_3 {
755
- readonly from?: unknown | undefined;
756
- readonly to?: unknown | undefined;
757
- readonly shape?: EdgeShape | undefined;
758
- readonly priority?: number | undefined;
759
- }
760
-
761
678
  export declare interface UpdateNodeRequest {
762
679
  readonly x?: number | undefined;
763
680
  readonly y?: number | undefined;
@@ -772,13 +689,6 @@ declare interface UpdateNodeRequest_2 {
772
689
  readonly priority?: number;
773
690
  }
774
691
 
775
- declare interface UpdateNodeRequest_3 {
776
- readonly x?: number | undefined;
777
- readonly y?: number | undefined;
778
- readonly priority?: number | undefined;
779
- readonly centerFn?: CenterFn | undefined;
780
- }
781
-
782
692
  export declare interface UpdatePortRequest {
783
693
  readonly direction?: number;
784
694
  }
@@ -787,10 +697,6 @@ declare interface UpdatePortRequest_2 {
787
697
  readonly direction?: number;
788
698
  }
789
699
 
790
- declare interface UpdatePortRequest_3 {
791
- readonly direction?: number;
792
- }
793
-
794
700
  export declare interface VerticalEdgeParams {
795
701
  readonly color?: string | undefined;
796
702
  readonly width?: number | undefined;