@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.
Files changed (118) hide show
  1. package/LICENSE +1 -1
  2. package/dist/core/graph-engine.d.ts +16 -7
  3. package/dist/core/graph-engine.d.ts.map +1 -1
  4. package/dist/core/graph-engine.js +13 -4
  5. package/dist/core/graph-layout.d.ts +69 -0
  6. package/dist/core/graph-layout.d.ts.map +1 -0
  7. package/dist/core/{base-layout.js → graph-layout.js} +63 -80
  8. package/dist/core/interaction-manager.d.ts +1 -1
  9. package/dist/core/interaction-manager.d.ts.map +1 -1
  10. package/dist/{core → graph}/edge.d.ts +18 -17
  11. package/dist/graph/edge.d.ts.map +1 -0
  12. package/dist/{core → graph}/edge.js +12 -15
  13. package/dist/{core → graph}/graph.d.ts +34 -31
  14. package/dist/graph/graph.d.ts.map +1 -0
  15. package/dist/{core → graph}/graph.js +43 -36
  16. package/dist/{core → graph}/node.d.ts +20 -20
  17. package/dist/graph/node.d.ts.map +1 -0
  18. package/dist/{core → graph}/node.js +16 -18
  19. package/dist/index.cjs +1181 -434
  20. package/dist/index.cjs.map +4 -4
  21. package/dist/index.d.ts +16 -14
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +19 -18
  24. package/dist/layers/graph-layer.d.ts +45 -5
  25. package/dist/layers/graph-layer.d.ts.map +1 -1
  26. package/dist/layers/graph-layer.js +80 -38
  27. package/dist/layers/node-layers/{path-rounded-rectange-layer.d.ts → path-rounded-rectangle-layer.d.ts} +1 -1
  28. package/dist/layers/node-layers/path-rounded-rectangle-layer.d.ts.map +1 -0
  29. package/dist/layers/node-layers/rounded-rectangle-layer-fragment.d.ts +1 -1
  30. package/dist/layers/node-layers/rounded-rectangle-layer-fragment.d.ts.map +1 -1
  31. package/dist/layers/node-layers/rounded-rectangle-layer-fragment.js +1 -3
  32. package/dist/layers/node-layers/rounded-rectangle-layer.d.ts +12 -3
  33. package/dist/layers/node-layers/rounded-rectangle-layer.d.ts.map +1 -1
  34. package/dist/layers/node-layers/rounded-rectangle-layer.js +25 -11
  35. package/dist/layouts/d3-force/d3-force-layout.d.ts +12 -3
  36. package/dist/layouts/d3-force/d3-force-layout.d.ts.map +1 -1
  37. package/dist/layouts/d3-force/d3-force-layout.js +11 -11
  38. package/dist/layouts/d3-force/worker.d.ts.map +1 -1
  39. package/dist/layouts/experimental/force-multi-graph-layout.d.ts +43 -0
  40. package/dist/layouts/experimental/force-multi-graph-layout.d.ts.map +1 -0
  41. package/dist/layouts/experimental/force-multi-graph-layout.js +226 -0
  42. package/dist/layouts/experimental/hive-plot-layout.d.ts +34 -0
  43. package/dist/layouts/experimental/hive-plot-layout.d.ts.map +1 -0
  44. package/dist/layouts/experimental/hive-plot-layout.js +142 -0
  45. package/dist/layouts/experimental/radial-layout.d.ts +28 -0
  46. package/dist/layouts/experimental/radial-layout.d.ts.map +1 -0
  47. package/dist/layouts/experimental/radial-layout.js +164 -0
  48. package/dist/layouts/gpu-force/gpu-force-layout.d.ts +15 -3
  49. package/dist/layouts/gpu-force/gpu-force-layout.d.ts.map +1 -1
  50. package/dist/layouts/gpu-force/gpu-force-layout.js +20 -18
  51. package/dist/layouts/gpu-force/worker.d.ts.map +1 -1
  52. package/dist/layouts/simple-layout.d.ts +42 -0
  53. package/dist/layouts/simple-layout.d.ts.map +1 -0
  54. package/dist/layouts/{simple-layout/simple-layout.js → simple-layout.js} +8 -7
  55. package/dist/loaders/create-graph.d.ts +13 -0
  56. package/dist/loaders/create-graph.d.ts.map +1 -0
  57. package/dist/{utils → loaders}/create-graph.js +9 -4
  58. package/dist/loaders/edge-parsers.d.ts +2 -6
  59. package/dist/loaders/edge-parsers.d.ts.map +1 -1
  60. package/dist/loaders/json-loader.js +1 -1
  61. package/dist/loaders/node-parsers.d.ts +2 -3
  62. package/dist/loaders/node-parsers.d.ts.map +1 -1
  63. package/dist/loaders/simple-json-graph-loader.d.ts +12 -0
  64. package/dist/loaders/simple-json-graph-loader.d.ts.map +1 -0
  65. package/dist/loaders/simple-json-graph-loader.js +20 -0
  66. package/dist/loaders/table-graph-loader.d.ts +17 -0
  67. package/dist/loaders/table-graph-loader.d.ts.map +1 -0
  68. package/dist/loaders/table-graph-loader.js +91 -0
  69. package/dist/utils/log.d.ts +1 -1
  70. package/dist/utils/log.d.ts.map +1 -1
  71. package/dist/utils/log.js +3 -3
  72. package/dist/widgets/long-press-button.d.ts +13 -0
  73. package/dist/widgets/long-press-button.d.ts.map +1 -0
  74. package/dist/widgets/long-press-button.js +31 -0
  75. package/dist/widgets/view-control-widget.d.ts +78 -0
  76. package/dist/widgets/view-control-widget.d.ts.map +1 -0
  77. package/dist/widgets/view-control-widget.js +194 -0
  78. package/package.json +8 -6
  79. package/src/core/graph-engine.ts +30 -10
  80. package/src/core/graph-layout.ts +146 -0
  81. package/src/core/interaction-manager.ts +2 -2
  82. package/src/{core → graph}/edge.ts +19 -17
  83. package/src/{core → graph}/graph.ts +51 -36
  84. package/src/{core → graph}/node.ts +21 -20
  85. package/src/index.ts +28 -28
  86. package/src/layers/graph-layer.ts +133 -46
  87. package/src/layers/node-layers/rounded-rectangle-layer-fragment.ts +1 -3
  88. package/src/layers/node-layers/rounded-rectangle-layer.ts +34 -10
  89. package/src/layouts/d3-force/d3-force-layout.ts +21 -11
  90. package/src/layouts/experimental/force-multi-graph-layout.ts +268 -0
  91. package/src/layouts/experimental/hive-plot-layout.ts +182 -0
  92. package/src/layouts/experimental/radial-layout.ts +210 -0
  93. package/src/layouts/gpu-force/gpu-force-layout.ts +32 -17
  94. package/src/layouts/{simple-layout/simple-layout.ts → simple-layout.ts} +34 -19
  95. package/src/{utils → loaders}/create-graph.ts +9 -4
  96. package/src/loaders/edge-parsers.ts +2 -1
  97. package/src/loaders/json-loader.ts +1 -1
  98. package/src/loaders/node-parsers.ts +2 -1
  99. package/src/loaders/simple-json-graph-loader.ts +28 -0
  100. package/src/loaders/table-graph-loader.ts +124 -0
  101. package/src/utils/log.ts +3 -3
  102. package/src/widgets/long-press-button.tsx +50 -0
  103. package/src/widgets/view-control-widget.tsx +337 -0
  104. package/dist/core/base-layout.d.ts +0 -72
  105. package/dist/core/base-layout.d.ts.map +0 -1
  106. package/dist/core/edge.d.ts.map +0 -1
  107. package/dist/core/graph.d.ts.map +0 -1
  108. package/dist/core/node.d.ts.map +0 -1
  109. package/dist/layers/node-layers/path-rounded-rectange-layer.d.ts.map +0 -1
  110. package/dist/layouts/simple-layout/simple-layout.d.ts +0 -23
  111. package/dist/layouts/simple-layout/simple-layout.d.ts.map +0 -1
  112. package/dist/utils/create-graph.d.ts +0 -9
  113. package/dist/utils/create-graph.d.ts.map +0 -1
  114. package/src/core/base-layout.ts +0 -154
  115. /package/dist/layers/node-layers/{path-rounded-rectange-layer.js → path-rounded-rectangle-layer.js} +0 -0
  116. /package/src/layers/node-layers/{path-rounded-rectange-layer.ts → path-rounded-rectangle-layer.ts} +0 -0
  117. /package/src/layouts/d3-force/{worker.ts → worker.js} +0 -0
  118. /package/src/layouts/gpu-force/{worker.ts → worker.js} +0 -0
@@ -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
- }
File without changes
File without changes