@deck.gl-community/graph-layers 9.0.2 → 9.1.0-beta.3
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/LICENSE +1 -1
- package/dist/core/graph-engine.d.ts +16 -7
- package/dist/core/graph-engine.d.ts.map +1 -1
- package/dist/core/graph-engine.js +13 -4
- package/dist/core/graph-layout.d.ts +69 -0
- package/dist/core/graph-layout.d.ts.map +1 -0
- package/dist/core/{base-layout.js → graph-layout.js} +63 -80
- package/dist/core/interaction-manager.d.ts +1 -1
- package/dist/core/interaction-manager.d.ts.map +1 -1
- package/dist/{core → graph}/edge.d.ts +18 -17
- package/dist/graph/edge.d.ts.map +1 -0
- package/dist/{core → graph}/edge.js +12 -15
- package/dist/{core → graph}/graph.d.ts +34 -31
- package/dist/graph/graph.d.ts.map +1 -0
- package/dist/{core → graph}/graph.js +43 -36
- package/dist/{core → graph}/node.d.ts +20 -20
- package/dist/graph/node.d.ts.map +1 -0
- package/dist/{core → graph}/node.js +16 -18
- package/dist/index.cjs +1181 -434
- package/dist/index.cjs.map +4 -4
- package/dist/index.d.ts +16 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -18
- package/dist/layers/graph-layer.d.ts +45 -5
- package/dist/layers/graph-layer.d.ts.map +1 -1
- package/dist/layers/graph-layer.js +80 -38
- package/dist/layers/node-layers/{path-rounded-rectange-layer.d.ts → path-rounded-rectangle-layer.d.ts} +1 -1
- package/dist/layers/node-layers/path-rounded-rectangle-layer.d.ts.map +1 -0
- package/dist/layers/node-layers/rounded-rectangle-layer-fragment.d.ts +1 -1
- package/dist/layers/node-layers/rounded-rectangle-layer-fragment.d.ts.map +1 -1
- package/dist/layers/node-layers/rounded-rectangle-layer-fragment.js +1 -3
- package/dist/layers/node-layers/rounded-rectangle-layer.d.ts +12 -3
- package/dist/layers/node-layers/rounded-rectangle-layer.d.ts.map +1 -1
- package/dist/layers/node-layers/rounded-rectangle-layer.js +25 -11
- package/dist/layouts/d3-force/d3-force-layout.d.ts +12 -3
- package/dist/layouts/d3-force/d3-force-layout.d.ts.map +1 -1
- package/dist/layouts/d3-force/d3-force-layout.js +11 -11
- package/dist/layouts/d3-force/worker.d.ts.map +1 -1
- package/dist/layouts/experimental/force-multi-graph-layout.d.ts +43 -0
- package/dist/layouts/experimental/force-multi-graph-layout.d.ts.map +1 -0
- package/dist/layouts/experimental/force-multi-graph-layout.js +226 -0
- package/dist/layouts/experimental/hive-plot-layout.d.ts +34 -0
- package/dist/layouts/experimental/hive-plot-layout.d.ts.map +1 -0
- package/dist/layouts/experimental/hive-plot-layout.js +142 -0
- package/dist/layouts/experimental/radial-layout.d.ts +28 -0
- package/dist/layouts/experimental/radial-layout.d.ts.map +1 -0
- package/dist/layouts/experimental/radial-layout.js +164 -0
- package/dist/layouts/gpu-force/gpu-force-layout.d.ts +15 -3
- package/dist/layouts/gpu-force/gpu-force-layout.d.ts.map +1 -1
- package/dist/layouts/gpu-force/gpu-force-layout.js +20 -18
- package/dist/layouts/gpu-force/worker.d.ts.map +1 -1
- package/dist/layouts/simple-layout.d.ts +42 -0
- package/dist/layouts/simple-layout.d.ts.map +1 -0
- package/dist/layouts/{simple-layout/simple-layout.js → simple-layout.js} +8 -7
- package/dist/loaders/create-graph.d.ts +13 -0
- package/dist/loaders/create-graph.d.ts.map +1 -0
- package/dist/{utils → loaders}/create-graph.js +9 -4
- package/dist/loaders/edge-parsers.d.ts +2 -6
- package/dist/loaders/edge-parsers.d.ts.map +1 -1
- package/dist/loaders/json-loader.js +1 -1
- package/dist/loaders/node-parsers.d.ts +2 -3
- package/dist/loaders/node-parsers.d.ts.map +1 -1
- package/dist/loaders/simple-json-graph-loader.d.ts +12 -0
- package/dist/loaders/simple-json-graph-loader.d.ts.map +1 -0
- package/dist/loaders/simple-json-graph-loader.js +20 -0
- package/dist/loaders/table-graph-loader.d.ts +17 -0
- package/dist/loaders/table-graph-loader.d.ts.map +1 -0
- package/dist/loaders/table-graph-loader.js +91 -0
- package/dist/utils/log.d.ts +1 -1
- package/dist/utils/log.d.ts.map +1 -1
- package/dist/utils/log.js +3 -3
- package/dist/widgets/long-press-button.d.ts +13 -0
- package/dist/widgets/long-press-button.d.ts.map +1 -0
- package/dist/widgets/long-press-button.js +31 -0
- package/dist/widgets/view-control-widget.d.ts +78 -0
- package/dist/widgets/view-control-widget.d.ts.map +1 -0
- package/dist/widgets/view-control-widget.js +194 -0
- package/package.json +8 -6
- package/src/core/graph-engine.ts +30 -10
- package/src/core/graph-layout.ts +146 -0
- package/src/core/interaction-manager.ts +2 -2
- package/src/{core → graph}/edge.ts +19 -17
- package/src/{core → graph}/graph.ts +51 -36
- package/src/{core → graph}/node.ts +21 -20
- package/src/index.ts +28 -28
- package/src/layers/graph-layer.ts +133 -46
- package/src/layers/node-layers/rounded-rectangle-layer-fragment.ts +1 -3
- package/src/layers/node-layers/rounded-rectangle-layer.ts +34 -10
- package/src/layouts/d3-force/d3-force-layout.ts +21 -11
- package/src/layouts/experimental/force-multi-graph-layout.ts +268 -0
- package/src/layouts/experimental/hive-plot-layout.ts +182 -0
- package/src/layouts/experimental/radial-layout.ts +210 -0
- package/src/layouts/gpu-force/gpu-force-layout.ts +32 -17
- package/src/layouts/{simple-layout/simple-layout.ts → simple-layout.ts} +34 -19
- package/src/{utils → loaders}/create-graph.ts +9 -4
- package/src/loaders/edge-parsers.ts +2 -1
- package/src/loaders/json-loader.ts +1 -1
- package/src/loaders/node-parsers.ts +2 -1
- package/src/loaders/simple-json-graph-loader.ts +28 -0
- package/src/loaders/table-graph-loader.ts +124 -0
- package/src/utils/log.ts +3 -3
- package/src/widgets/long-press-button.tsx +50 -0
- package/src/widgets/view-control-widget.tsx +337 -0
- package/dist/core/base-layout.d.ts +0 -72
- package/dist/core/base-layout.d.ts.map +0 -1
- package/dist/core/edge.d.ts.map +0 -1
- package/dist/core/graph.d.ts.map +0 -1
- package/dist/core/node.d.ts.map +0 -1
- package/dist/layers/node-layers/path-rounded-rectange-layer.d.ts.map +0 -1
- package/dist/layouts/simple-layout/simple-layout.d.ts +0 -23
- package/dist/layouts/simple-layout/simple-layout.d.ts.map +0 -1
- package/dist/utils/create-graph.d.ts +0 -9
- package/dist/utils/create-graph.d.ts.map +0 -1
- package/src/core/base-layout.ts +0 -154
- /package/dist/layers/node-layers/{path-rounded-rectange-layer.js → path-rounded-rectangle-layer.js} +0 -0
- /package/src/layers/node-layers/{path-rounded-rectange-layer.ts → path-rounded-rectangle-layer.ts} +0 -0
- /package/src/layouts/d3-force/{worker.ts → worker.js} +0 -0
- /package/src/layouts/gpu-force/{worker.ts → worker.js} +0 -0
package/src/core/base-layout.ts
DELETED
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
// deck.gl-community
|
|
2
|
-
// SPDX-License-Identifier: MIT
|
|
3
|
-
// Copyright (c) vis.gl contributors
|
|
4
|
-
|
|
5
|
-
import isEqual from 'lodash.isequal';
|
|
6
|
-
import {EDGE_TYPE, LAYOUT_STATE} from './constants';
|
|
7
|
-
|
|
8
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
9
|
-
export interface BaseLayoutOptions {}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* All the layout classes are extended from this base layout class.
|
|
13
|
-
*/
|
|
14
|
-
export class BaseLayout extends EventTarget {
|
|
15
|
-
/** Name of the layout. */
|
|
16
|
-
protected readonly _name: string = 'BaseLayout';
|
|
17
|
-
/** Extra configuration options of the layout. */
|
|
18
|
-
protected _options: BaseLayoutOptions;
|
|
19
|
-
|
|
20
|
-
public version = 0;
|
|
21
|
-
public state = LAYOUT_STATE.INIT;
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Constructor of BaseLayout
|
|
25
|
-
* @param {Object} options extra configuration options of the layout
|
|
26
|
-
*/
|
|
27
|
-
constructor(options: BaseLayoutOptions = {}) {
|
|
28
|
-
super();
|
|
29
|
-
this._options = options;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* @fires BaseLayout#onLayoutStart
|
|
34
|
-
* @protected
|
|
35
|
-
*/
|
|
36
|
-
_onLayoutStart(): void {
|
|
37
|
-
this._updateState(LAYOUT_STATE.CALCULATING);
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Layout calculation start.
|
|
41
|
-
*
|
|
42
|
-
* @event BaseLayout#onLayoutChange
|
|
43
|
-
* @type {CustomEvent}
|
|
44
|
-
*/
|
|
45
|
-
this.dispatchEvent(new CustomEvent('onLayoutStart'));
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* @fires BaseLayout#onLayoutChange
|
|
50
|
-
* @protected
|
|
51
|
-
*/
|
|
52
|
-
_onLayoutChange(): void {
|
|
53
|
-
this._updateState(LAYOUT_STATE.CALCULATING);
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Layout calculation iteration.
|
|
57
|
-
*
|
|
58
|
-
* @event BaseLayout#onLayoutChange
|
|
59
|
-
* @type {CustomEvent}
|
|
60
|
-
*/
|
|
61
|
-
this.dispatchEvent(new CustomEvent('onLayoutChange'));
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* @fires BaseLayout#onLayoutDone
|
|
66
|
-
* @protected
|
|
67
|
-
*/
|
|
68
|
-
_onLayoutDone(): void {
|
|
69
|
-
this._updateState(LAYOUT_STATE.DONE);
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Layout calculation is done.
|
|
73
|
-
*
|
|
74
|
-
* @event BaseLayout#onLayoutDone
|
|
75
|
-
* @type {CustomEvent}
|
|
76
|
-
*/
|
|
77
|
-
this.dispatchEvent(new CustomEvent('onLayoutDone'));
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* @fires BaseLayout#onLayoutError
|
|
82
|
-
* @protected
|
|
83
|
-
*/
|
|
84
|
-
_onLayoutError(): void {
|
|
85
|
-
this._updateState(LAYOUT_STATE.ERROR);
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* Layout calculation went wrong.
|
|
89
|
-
*
|
|
90
|
-
* @event BaseLayout#onLayoutError
|
|
91
|
-
* @type {CustomEvent}
|
|
92
|
-
*/
|
|
93
|
-
this.dispatchEvent(new CustomEvent('onLayoutError'));
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* Check the equality of two layouts
|
|
98
|
-
* @param {Object} layout The layout to be compared.
|
|
99
|
-
* @return {Bool} True if the layout is the same as itself.
|
|
100
|
-
*/
|
|
101
|
-
equals(layout: BaseLayout): boolean {
|
|
102
|
-
if (!layout || !(layout instanceof BaseLayout)) {
|
|
103
|
-
return false;
|
|
104
|
-
}
|
|
105
|
-
return this._name === layout._name && isEqual(this._options, layout._options);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/** virtual functions: will be implemented in the child class */
|
|
109
|
-
|
|
110
|
-
// first time to pass the graph data into this layout
|
|
111
|
-
initializeGraph(graph) {}
|
|
112
|
-
// update the existing graph
|
|
113
|
-
updateGraph(graph) {}
|
|
114
|
-
// start the layout calculation
|
|
115
|
-
start() {}
|
|
116
|
-
// update the layout calculation
|
|
117
|
-
update() {}
|
|
118
|
-
// resume the layout calculation
|
|
119
|
-
resume() {}
|
|
120
|
-
// stop the layout calculation
|
|
121
|
-
stop() {}
|
|
122
|
-
// access the position of the node in the layout
|
|
123
|
-
getNodePosition(node: Node): [number, number] {
|
|
124
|
-
return [0, 0];
|
|
125
|
-
}
|
|
126
|
-
// access the layout information of the edge
|
|
127
|
-
getEdgePosition(edge) {
|
|
128
|
-
return {
|
|
129
|
-
type: EDGE_TYPE.LINE,
|
|
130
|
-
sourcePosition: [0, 0],
|
|
131
|
-
targetPosition: [0, 0],
|
|
132
|
-
controlPoints: []
|
|
133
|
-
};
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
/**
|
|
137
|
-
* Pin the node to a designated position, and the node won't move anymore
|
|
138
|
-
* @param {Object} node Node to be locked
|
|
139
|
-
* @param {Number} x x coordinate
|
|
140
|
-
* @param {Number} y y coordinate
|
|
141
|
-
*/
|
|
142
|
-
lockNodePosition(node, x, y) {}
|
|
143
|
-
|
|
144
|
-
/**
|
|
145
|
-
* Unlock the node, the node will be able to move freely.
|
|
146
|
-
* @param {Object} node Node to be unlocked
|
|
147
|
-
*/
|
|
148
|
-
unlockNodePosition(node) {}
|
|
149
|
-
|
|
150
|
-
_updateState(state) {
|
|
151
|
-
this.state = state;
|
|
152
|
-
this.version += 1;
|
|
153
|
-
}
|
|
154
|
-
}
|
/package/dist/layers/node-layers/{path-rounded-rectange-layer.js → path-rounded-rectangle-layer.js}
RENAMED
|
File without changes
|
/package/src/layers/node-layers/{path-rounded-rectange-layer.ts → path-rounded-rectangle-layer.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|