ink-graph-new 0.0.1-beta.25

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 (242) hide show
  1. package/README.md +5 -0
  2. package/dist/assets/big/dataSourceTypeIcon.d.ts +23 -0
  3. package/dist/assets/big/dataSourceTypeIcon.d.ts.map +1 -0
  4. package/dist/assets/big/dataSourceTypeIcon.js +23 -0
  5. package/dist/assets/big/dataSourceTypeIcon.js.map +1 -0
  6. package/dist/assets/big/entityType.d.ts +2 -0
  7. package/dist/assets/big/entityType.d.ts.map +1 -0
  8. package/dist/assets/big/entityType.js +2 -0
  9. package/dist/assets/big/entityType.js.map +1 -0
  10. package/dist/assets/big/lineageIcon.d.ts +14 -0
  11. package/dist/assets/big/lineageIcon.d.ts.map +1 -0
  12. package/dist/assets/big/lineageIcon.js +14 -0
  13. package/dist/assets/big/lineageIcon.js.map +1 -0
  14. package/dist/assets/big/tableTypeIcon.d.ts +7 -0
  15. package/dist/assets/big/tableTypeIcon.d.ts.map +1 -0
  16. package/dist/assets/big/tableTypeIcon.js +7 -0
  17. package/dist/assets/big/tableTypeIcon.js.map +1 -0
  18. package/dist/assets/big/tipIcon.d.ts +4 -0
  19. package/dist/assets/big/tipIcon.d.ts.map +1 -0
  20. package/dist/assets/big/tipIcon.js +4 -0
  21. package/dist/assets/big/tipIcon.js.map +1 -0
  22. package/dist/assets/index.d.ts +4 -0
  23. package/dist/assets/index.d.ts.map +1 -0
  24. package/dist/assets/index.js +7 -0
  25. package/dist/assets/index.js.map +1 -0
  26. package/dist/components/Edges/ALDEdge.d.ts +11 -0
  27. package/dist/components/Edges/ALDEdge.d.ts.map +1 -0
  28. package/dist/components/Edges/ALDEdge.js +195 -0
  29. package/dist/components/Edges/ALDEdge.js.map +1 -0
  30. package/dist/components/Edges/BaseEdge.d.ts +24 -0
  31. package/dist/components/Edges/BaseEdge.d.ts.map +1 -0
  32. package/dist/components/Edges/BaseEdge.js +171 -0
  33. package/dist/components/Edges/BaseEdge.js.map +1 -0
  34. package/dist/components/Edges/DagreEdge.d.ts +7 -0
  35. package/dist/components/Edges/DagreEdge.d.ts.map +1 -0
  36. package/dist/components/Edges/DagreEdge.js +73 -0
  37. package/dist/components/Edges/DagreEdge.js.map +1 -0
  38. package/dist/components/Edges/HierarchyEdge.d.ts +11 -0
  39. package/dist/components/Edges/HierarchyEdge.d.ts.map +1 -0
  40. package/dist/components/Edges/HierarchyEdge.js +75 -0
  41. package/dist/components/Edges/HierarchyEdge.js.map +1 -0
  42. package/dist/components/Edges/index.d.ts +6 -0
  43. package/dist/components/Edges/index.d.ts.map +1 -0
  44. package/dist/components/Edges/index.js +6 -0
  45. package/dist/components/Edges/index.js.map +1 -0
  46. package/dist/components/Edges/utils/bezierPath.d.ts +2 -0
  47. package/dist/components/Edges/utils/bezierPath.d.ts.map +1 -0
  48. package/dist/components/Edges/utils/bezierPath.js +24 -0
  49. package/dist/components/Edges/utils/bezierPath.js.map +1 -0
  50. package/dist/components/Edges/utils/index.d.ts +4 -0
  51. package/dist/components/Edges/utils/index.d.ts.map +1 -0
  52. package/dist/components/Edges/utils/index.js +4 -0
  53. package/dist/components/Edges/utils/index.js.map +1 -0
  54. package/dist/components/Edges/utils/loopBackPath.d.ts +2 -0
  55. package/dist/components/Edges/utils/loopBackPath.d.ts.map +1 -0
  56. package/dist/components/Edges/utils/loopBackPath.js +35 -0
  57. package/dist/components/Edges/utils/loopBackPath.js.map +1 -0
  58. package/dist/components/Edges/utils/selfConnectPath.d.ts +2 -0
  59. package/dist/components/Edges/utils/selfConnectPath.d.ts.map +1 -0
  60. package/dist/components/Edges/utils/selfConnectPath.js +25 -0
  61. package/dist/components/Edges/utils/selfConnectPath.js.map +1 -0
  62. package/dist/components/Nodes/ALDNode.d.ts +18 -0
  63. package/dist/components/Nodes/ALDNode.d.ts.map +1 -0
  64. package/dist/components/Nodes/ALDNode.js +34 -0
  65. package/dist/components/Nodes/ALDNode.js.map +1 -0
  66. package/dist/components/Nodes/BaseNode.d.ts +37 -0
  67. package/dist/components/Nodes/BaseNode.d.ts.map +1 -0
  68. package/dist/components/Nodes/BaseNode.js +225 -0
  69. package/dist/components/Nodes/BaseNode.js.map +1 -0
  70. package/dist/components/Nodes/index.d.ts +3 -0
  71. package/dist/components/Nodes/index.d.ts.map +1 -0
  72. package/dist/components/Nodes/index.js +3 -0
  73. package/dist/components/Nodes/index.js.map +1 -0
  74. package/dist/components/index.d.ts +3 -0
  75. package/dist/components/index.d.ts.map +1 -0
  76. package/dist/components/index.js +3 -0
  77. package/dist/components/index.js.map +1 -0
  78. package/dist/constant/bigEvents.d.ts +22 -0
  79. package/dist/constant/bigEvents.d.ts.map +1 -0
  80. package/dist/constant/bigEvents.js +25 -0
  81. package/dist/constant/bigEvents.js.map +1 -0
  82. package/dist/constant/events.d.ts +5 -0
  83. package/dist/constant/events.d.ts.map +1 -0
  84. package/dist/constant/events.js +6 -0
  85. package/dist/constant/events.js.map +1 -0
  86. package/dist/constant/index.d.ts +3 -0
  87. package/dist/constant/index.d.ts.map +1 -0
  88. package/dist/constant/index.js +3 -0
  89. package/dist/constant/index.js.map +1 -0
  90. package/dist/constant/lineage.d.ts +64 -0
  91. package/dist/constant/lineage.d.ts.map +1 -0
  92. package/dist/constant/lineage.js +95 -0
  93. package/dist/constant/lineage.js.map +1 -0
  94. package/dist/graph/Graph.d.ts +83 -0
  95. package/dist/graph/Graph.d.ts.map +1 -0
  96. package/dist/graph/Graph.js +392 -0
  97. package/dist/graph/Graph.js.map +1 -0
  98. package/dist/graph/TreeGraph.d.ts +65 -0
  99. package/dist/graph/TreeGraph.d.ts.map +1 -0
  100. package/dist/graph/TreeGraph.js +267 -0
  101. package/dist/graph/TreeGraph.js.map +1 -0
  102. package/dist/graph/index.d.ts +3 -0
  103. package/dist/graph/index.d.ts.map +1 -0
  104. package/dist/graph/index.js +3 -0
  105. package/dist/graph/index.js.map +1 -0
  106. package/dist/index.d.ts +8 -0
  107. package/dist/index.d.ts.map +1 -0
  108. package/dist/index.js +8 -0
  109. package/dist/index.js.map +1 -0
  110. package/dist/layout/ALDLayout.d.ts +8 -0
  111. package/dist/layout/ALDLayout.d.ts.map +1 -0
  112. package/dist/layout/ALDLayout.js +147 -0
  113. package/dist/layout/ALDLayout.js.map +1 -0
  114. package/dist/layout/BaseLayout.d.ts +14 -0
  115. package/dist/layout/BaseLayout.d.ts.map +1 -0
  116. package/dist/layout/BaseLayout.js +10 -0
  117. package/dist/layout/BaseLayout.js.map +1 -0
  118. package/dist/layout/BigLayout.d.ts +43 -0
  119. package/dist/layout/BigLayout.d.ts.map +1 -0
  120. package/dist/layout/BigLayout.js +308 -0
  121. package/dist/layout/BigLayout.js.map +1 -0
  122. package/dist/layout/Dagre.d.ts +6 -0
  123. package/dist/layout/Dagre.d.ts.map +1 -0
  124. package/dist/layout/Dagre.js +97 -0
  125. package/dist/layout/Dagre.js.map +1 -0
  126. package/dist/layout/HierarchyLayout.d.ts +7 -0
  127. package/dist/layout/HierarchyLayout.d.ts.map +1 -0
  128. package/dist/layout/HierarchyLayout.js +66 -0
  129. package/dist/layout/HierarchyLayout.js.map +1 -0
  130. package/dist/layout/index.d.ts +6 -0
  131. package/dist/layout/index.d.ts.map +1 -0
  132. package/dist/layout/index.js +6 -0
  133. package/dist/layout/index.js.map +1 -0
  134. package/dist/manager/PluginManager.d.ts +11 -0
  135. package/dist/manager/PluginManager.d.ts.map +1 -0
  136. package/dist/manager/PluginManager.js +25 -0
  137. package/dist/manager/PluginManager.js.map +1 -0
  138. package/dist/manager/index.d.ts +2 -0
  139. package/dist/manager/index.d.ts.map +1 -0
  140. package/dist/manager/index.js +2 -0
  141. package/dist/manager/index.js.map +1 -0
  142. package/dist/plugins/Minimap/index.d.ts +54 -0
  143. package/dist/plugins/Minimap/index.d.ts.map +1 -0
  144. package/dist/plugins/Minimap/index.js +378 -0
  145. package/dist/plugins/Minimap/index.js.map +1 -0
  146. package/dist/plugins/Tools/ResetViewport.d.ts +11 -0
  147. package/dist/plugins/Tools/ResetViewport.d.ts.map +1 -0
  148. package/dist/plugins/Tools/ResetViewport.js +32 -0
  149. package/dist/plugins/Tools/ResetViewport.js.map +1 -0
  150. package/dist/plugins/Tools/ToolPlugin.d.ts +9 -0
  151. package/dist/plugins/Tools/ToolPlugin.d.ts.map +1 -0
  152. package/dist/plugins/Tools/ToolPlugin.js +42 -0
  153. package/dist/plugins/Tools/ToolPlugin.js.map +1 -0
  154. package/dist/plugins/Tools/Zoom.d.ts +8 -0
  155. package/dist/plugins/Tools/Zoom.d.ts.map +1 -0
  156. package/dist/plugins/Tools/Zoom.js +58 -0
  157. package/dist/plugins/Tools/Zoom.js.map +1 -0
  158. package/dist/plugins/Tools/defaultConfig.d.ts +12 -0
  159. package/dist/plugins/Tools/defaultConfig.d.ts.map +1 -0
  160. package/dist/plugins/Tools/defaultConfig.js +12 -0
  161. package/dist/plugins/Tools/defaultConfig.js.map +1 -0
  162. package/dist/plugins/Tools/index.d.ts +2 -0
  163. package/dist/plugins/Tools/index.d.ts.map +1 -0
  164. package/dist/plugins/Tools/index.js +2 -0
  165. package/dist/plugins/Tools/index.js.map +1 -0
  166. package/dist/types/Edge.d.ts +34 -0
  167. package/dist/types/Edge.d.ts.map +1 -0
  168. package/dist/types/Edge.js +2 -0
  169. package/dist/types/Edge.js.map +1 -0
  170. package/dist/types/Graph.d.ts +53 -0
  171. package/dist/types/Graph.d.ts.map +1 -0
  172. package/dist/types/Graph.js +2 -0
  173. package/dist/types/Graph.js.map +1 -0
  174. package/dist/types/Layout.d.ts +57 -0
  175. package/dist/types/Layout.d.ts.map +1 -0
  176. package/dist/types/Layout.js +9 -0
  177. package/dist/types/Layout.js.map +1 -0
  178. package/dist/types/Node.d.ts +45 -0
  179. package/dist/types/Node.d.ts.map +1 -0
  180. package/dist/types/Node.js +2 -0
  181. package/dist/types/Node.js.map +1 -0
  182. package/dist/types/Plugin.d.ts +7 -0
  183. package/dist/types/Plugin.d.ts.map +1 -0
  184. package/dist/types/Plugin.js +2 -0
  185. package/dist/types/Plugin.js.map +1 -0
  186. package/dist/types/big/BigNode.d.ts +8 -0
  187. package/dist/types/big/BigNode.d.ts.map +1 -0
  188. package/dist/types/big/BigNode.js +15 -0
  189. package/dist/types/big/BigNode.js.map +1 -0
  190. package/dist/types/big/enumType.d.ts +6 -0
  191. package/dist/types/big/enumType.d.ts.map +1 -0
  192. package/dist/types/big/enumType.js +11 -0
  193. package/dist/types/big/enumType.js.map +1 -0
  194. package/dist/types/big/index.d.ts +3 -0
  195. package/dist/types/big/index.d.ts.map +1 -0
  196. package/dist/types/big/index.js +3 -0
  197. package/dist/types/big/index.js.map +1 -0
  198. package/dist/types/index.d.ts +7 -0
  199. package/dist/types/index.d.ts.map +1 -0
  200. package/dist/types/index.js +7 -0
  201. package/dist/types/index.js.map +1 -0
  202. package/dist/utils/big/defaultNode.d.ts +23 -0
  203. package/dist/utils/big/defaultNode.d.ts.map +1 -0
  204. package/dist/utils/big/defaultNode.js +40 -0
  205. package/dist/utils/big/defaultNode.js.map +1 -0
  206. package/dist/utils/big/getIconByType.d.ts +2 -0
  207. package/dist/utils/big/getIconByType.d.ts.map +1 -0
  208. package/dist/utils/big/getIconByType.js +21 -0
  209. package/dist/utils/big/getIconByType.js.map +1 -0
  210. package/dist/utils/big/index.d.ts +2 -0
  211. package/dist/utils/big/index.d.ts.map +1 -0
  212. package/dist/utils/big/index.js +2 -0
  213. package/dist/utils/big/index.js.map +1 -0
  214. package/dist/utils/buildTreeEdge.d.ts +3 -0
  215. package/dist/utils/buildTreeEdge.d.ts.map +1 -0
  216. package/dist/utils/buildTreeEdge.js +49 -0
  217. package/dist/utils/buildTreeEdge.js.map +1 -0
  218. package/dist/utils/canvas.d.ts +5 -0
  219. package/dist/utils/canvas.d.ts.map +1 -0
  220. package/dist/utils/canvas.js +13 -0
  221. package/dist/utils/canvas.js.map +1 -0
  222. package/dist/utils/graph.d.ts +4 -0
  223. package/dist/utils/graph.d.ts.map +1 -0
  224. package/dist/utils/graph.js +22 -0
  225. package/dist/utils/graph.js.map +1 -0
  226. package/dist/utils/index.d.ts +6 -0
  227. package/dist/utils/index.d.ts.map +1 -0
  228. package/dist/utils/index.js +6 -0
  229. package/dist/utils/index.js.map +1 -0
  230. package/dist/utils/node-performance-test.d.ts +3 -0
  231. package/dist/utils/node-performance-test.d.ts.map +1 -0
  232. package/dist/utils/node-performance-test.js +155 -0
  233. package/dist/utils/node-performance-test.js.map +1 -0
  234. package/dist/utils/node.d.ts +8 -0
  235. package/dist/utils/node.d.ts.map +1 -0
  236. package/dist/utils/node.js +275 -0
  237. package/dist/utils/node.js.map +1 -0
  238. package/dist/utils/text.d.ts +2 -0
  239. package/dist/utils/text.d.ts.map +1 -0
  240. package/dist/utils/text.js +14 -0
  241. package/dist/utils/text.js.map +1 -0
  242. package/package.json +34 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DagreEdge.d.ts","sourceRoot":"","sources":["../../../src/components/Edges/DagreEdge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,qBAAa,SAAU,SAAQ,QAAQ;IACrC,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK;CAoD9C"}
@@ -0,0 +1,73 @@
1
+ import { __extends } from "tslib";
2
+ import { Path } from 'ink-new';
3
+ import { BaseEdge } from './BaseEdge';
4
+ var DagreEdge = /** @class */ (function (_super) {
5
+ __extends(DagreEdge, _super);
6
+ function DagreEdge() {
7
+ return _super !== null && _super.apply(this, arguments) || this;
8
+ }
9
+ DagreEdge.prototype.render = function (cfg, container) {
10
+ var _a, _b;
11
+ var visible = cfg.visible, style = cfg.style, points = cfg.points;
12
+ if (!visible || !points)
13
+ return;
14
+ var d = createLinePathD(points);
15
+ if (!d)
16
+ return;
17
+ var arrowConfig = {
18
+ name: 'arrow',
19
+ style: {
20
+ d: 'M 6,6 L -6,0 L 6,-6 Z',
21
+ fill: (style === null || style === void 0 ? void 0 : style.fill) || '#000',
22
+ stroke: (style === null || style === void 0 ? void 0 : style.stroke) || '#ddd',
23
+ lineDash: (style === null || style === void 0 ? void 0 : style.strokeDasharray) || [0],
24
+ strokeWidth: (style === null || style === void 0 ? void 0 : style.lineWidth) || 1,
25
+ zIndex: (style === null || style === void 0 ? void 0 : style.zIndex) || -1,
26
+ cursor: 'pointer',
27
+ },
28
+ };
29
+ // 复用或创建 markerEnd 实例
30
+ if (!((_a = this.markerEnd) === null || _a === void 0 ? void 0 : _a.isAlive())) {
31
+ this.markerEnd = new Path(arrowConfig);
32
+ }
33
+ else {
34
+ this.markerEnd.updateStyle(arrowConfig.style);
35
+ }
36
+ var config = {
37
+ name: 'big-edge',
38
+ style: {
39
+ d: d,
40
+ fill: (style === null || style === void 0 ? void 0 : style.fill) || 'rgba(255,255,255,0)',
41
+ stroke: (style === null || style === void 0 ? void 0 : style.stroke) || '#ddd',
42
+ lineDash: (style === null || style === void 0 ? void 0 : style.strokeDasharray) || [0],
43
+ strokeWidth: (style === null || style === void 0 ? void 0 : style.lineWidth) || 1,
44
+ zIndex: (style === null || style === void 0 ? void 0 : style.zIndex) || -1,
45
+ cursor: 'pointer',
46
+ markerEnd: this.markerEnd,
47
+ },
48
+ };
49
+ // 复用或创建 path 实例
50
+ if (!((_b = this.path) === null || _b === void 0 ? void 0 : _b.isAlive())) {
51
+ this.path = new Path(config);
52
+ this.path.node = this;
53
+ container.addChild(this.path);
54
+ }
55
+ else {
56
+ this.path.updateStyle(config.style);
57
+ }
58
+ };
59
+ return DagreEdge;
60
+ }(BaseEdge));
61
+ export { DagreEdge };
62
+ function createLinePathD(points) {
63
+ if (points.length < 2)
64
+ return '';
65
+ var d = "M ".concat(points[0].x, ",").concat(points[0].y);
66
+ for (var i = 1; i < points.length; i++) {
67
+ d += " L ".concat(points[i].x, ",").concat(points[i].y);
68
+ }
69
+ // 如果需要闭合路径
70
+ // d += ` Z`;
71
+ return d;
72
+ }
73
+ //# sourceMappingURL=DagreEdge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DagreEdge.js","sourceRoot":"","sources":["../../../src/components/Edges/DagreEdge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { Group } from 'ink-new';
2
+ import { IBaseEdgeConfig } from '../../types/Edge';
3
+ import { BaseEdge } from './BaseEdge';
4
+ import { Graph } from '../../graph';
5
+ export declare class HierarchyEdge extends BaseEdge {
6
+ graph: Graph;
7
+ config: any;
8
+ constructor(graph: Graph, config: any);
9
+ render(cfg: IBaseEdgeConfig, container: Group): void;
10
+ }
11
+ //# sourceMappingURL=HierarchyEdge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HierarchyEdge.d.ts","sourceRoot":"","sources":["../../../src/components/Edges/HierarchyEdge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAqB,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,qBAAa,aAAc,SAAQ,QAAQ;IACtB,KAAK,EAAE,KAAK;IAAS,MAAM,EAAE,GAAG;gBAAhC,KAAK,EAAE,KAAK,EAAS,MAAM,EAAE,GAAG;IAInD,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,KAAK;CAsD9C"}
@@ -0,0 +1,75 @@
1
+ import { __extends } from "tslib";
2
+ import { Path } from 'ink-new';
3
+ import { BaseEdge } from './BaseEdge';
4
+ var HierarchyEdge = /** @class */ (function (_super) {
5
+ __extends(HierarchyEdge, _super);
6
+ function HierarchyEdge(graph, config) {
7
+ var _this = _super.call(this, graph, config) || this;
8
+ _this.graph = graph;
9
+ _this.config = config;
10
+ return _this;
11
+ }
12
+ HierarchyEdge.prototype.render = function (cfg, container) {
13
+ var _a, _b, _c;
14
+ var defaultEdge = this.graph.getConfig().defaultEdge;
15
+ var _d = cfg.visible, visible = _d === void 0 ? true : _d, style = cfg.style, points = cfg.points;
16
+ if (!visible || !points)
17
+ return;
18
+ var d = createLinePathD(points);
19
+ if (!d)
20
+ return;
21
+ var markerSize = (style === null || style === void 0 ? void 0 : style.markerSize) || ((_a = defaultEdge === null || defaultEdge === void 0 ? void 0 : defaultEdge.style) === null || _a === void 0 ? void 0 : _a.markerSize) || 6;
22
+ var arrowConfig = {
23
+ name: 'arrow',
24
+ style: {
25
+ d: "M ".concat(markerSize, ",").concat(markerSize, " L -").concat(markerSize, ",0 L ").concat(markerSize, ",-").concat(markerSize, " Z"),
26
+ fill: (style === null || style === void 0 ? void 0 : style.fill) || '#000',
27
+ stroke: (style === null || style === void 0 ? void 0 : style.stroke) || '#ddd',
28
+ lineDash: (style === null || style === void 0 ? void 0 : style.strokeDasharray) || [0],
29
+ strokeWidth: (style === null || style === void 0 ? void 0 : style.lineWidth) || 1,
30
+ zIndex: (style === null || style === void 0 ? void 0 : style.zIndex) || -1,
31
+ cursor: 'pointer',
32
+ },
33
+ };
34
+ // 复用或创建 markerEnd 实例
35
+ if (!((_b = this.markerEnd) === null || _b === void 0 ? void 0 : _b.isAlive())) {
36
+ this.markerEnd = new Path(arrowConfig);
37
+ }
38
+ else {
39
+ this.markerEnd.updateStyle(arrowConfig.style);
40
+ }
41
+ var config = {
42
+ name: 'big-edge',
43
+ style: {
44
+ d: d,
45
+ fill: (style === null || style === void 0 ? void 0 : style.fill) || 'rgba(255,255,255,0)',
46
+ stroke: (style === null || style === void 0 ? void 0 : style.stroke) || '#ddd',
47
+ lineDash: (style === null || style === void 0 ? void 0 : style.strokeDasharray) || [0],
48
+ strokeWidth: (style === null || style === void 0 ? void 0 : style.lineWidth) || 1,
49
+ zIndex: (style === null || style === void 0 ? void 0 : style.zIndex) || -1,
50
+ cursor: 'pointer',
51
+ markerEnd: this.markerEnd,
52
+ },
53
+ };
54
+ // 复用或创建 path 实例
55
+ if (!((_c = this.path) === null || _c === void 0 ? void 0 : _c.isAlive())) {
56
+ this.path = new Path(config);
57
+ this.path.node = this;
58
+ container.addChild(this.path);
59
+ }
60
+ else {
61
+ this.path.updateStyle(config.style);
62
+ }
63
+ };
64
+ return HierarchyEdge;
65
+ }(BaseEdge));
66
+ export { HierarchyEdge };
67
+ function createLinePathD(points) {
68
+ var startPoint = points[0];
69
+ var endPoint = points[points.length - 1];
70
+ if (points.length < 2)
71
+ return '';
72
+ var d = "\n M ".concat(startPoint.x, ",").concat(startPoint.y, "\n L ").concat(startPoint.x, ",").concat((startPoint.y + endPoint.y) / 2, "\n L ").concat(endPoint.x, ",").concat((startPoint.y + endPoint.y) / 2, "\n L ").concat(endPoint.x, ",").concat(endPoint.y, "\n ");
73
+ return d;
74
+ }
75
+ //# sourceMappingURL=HierarchyEdge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HierarchyEdge.js","sourceRoot":"","sources":["../../../src/components/Edges/HierarchyEdge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export * from './BaseEdge';
2
+ export * from './ALDEdge';
3
+ export * from './DagreEdge';
4
+ export * from './HierarchyEdge';
5
+ export * from './utils';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Edges/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAA"}
@@ -0,0 +1,6 @@
1
+ export * from './BaseEdge';
2
+ export * from './ALDEdge';
3
+ export * from './DagreEdge';
4
+ export * from './HierarchyEdge';
5
+ export * from './utils';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Edges/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function bezierPath(srcX?: number, srcY?: number, dstX?: number, dstY?: number): string;
2
+ //# sourceMappingURL=bezierPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bezierPath.d.ts","sourceRoot":"","sources":["../../../../src/components/Edges/utils/bezierPath.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,SAAI,EAAE,IAAI,SAAI,EAAE,IAAI,SAAI,EAAE,IAAI,SAAI,UA0BhE"}
@@ -0,0 +1,24 @@
1
+ export function bezierPath(srcX, srcY, dstX, dstY) {
2
+ if (srcX === void 0) { srcX = 0; }
3
+ if (srcY === void 0) { srcY = 0; }
4
+ if (dstX === void 0) { dstX = 0; }
5
+ if (dstY === void 0) { dstY = 0; }
6
+ var offset = 20;
7
+ var arrowOffsetX = 11;
8
+ var defaultTargetOffset = 2;
9
+ var x3Offset = 3;
10
+ // end
11
+ var x1 = srcX + offset;
12
+ var y1 = srcY;
13
+ var x2 = dstX - offset - arrowOffsetX - defaultTargetOffset;
14
+ var y2 = dstY;
15
+ var x3 = dstX - arrowOffsetX + x3Offset;
16
+ var y3 = y2;
17
+ var theta = Math.atan((y2 - y1) / (x2 - x1));
18
+ var sx = x1 + offset * Math.cos(theta);
19
+ var sy = y1 + offset * Math.sin(theta);
20
+ var dx = x2 - offset * Math.cos(theta);
21
+ var dy = y2 - offset * Math.sin(theta);
22
+ return "\n M".concat(srcX, " ").concat(srcY, "\n Q").concat(x1, " ").concat(y1, " ").concat(sx, " ").concat(sy, "\n L").concat(dx, " ").concat(dy, "\n Q").concat(x2, " ").concat(y2, " ").concat(x3, " ").concat(y3, " \n ");
23
+ }
24
+ //# sourceMappingURL=bezierPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bezierPath.js","sourceRoot":"","sources":["../../../../src/components/Edges/utils/bezierPath.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,IAAQ,EAAE,IAAQ,EAAE,IAAQ,EAAE,IAAQ;IAAtC,qBAAA,EAAA,QAAQ;IAAE,qBAAA,EAAA,QAAQ;IAAE,qBAAA,EAAA,QAAQ;IAAE,qBAAA,EAAA,QAAQ;IAC/D,IAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAM,YAAY,GAAG,EAAE,CAAC;IACxB,IAAM,mBAAmB,GAAG,CAAC,CAAC;IAC9B,IAAM,QAAQ,GAAG,CAAC,CAAC;IAEnB,MAAM;IACN,IAAM,EAAE,GAAG,IAAI,GAAG,MAAM,CAAC;IACzB,IAAM,EAAE,GAAG,IAAI,CAAC;IAChB,IAAM,EAAE,GAAG,IAAI,GAAG,MAAM,GAAG,YAAY,GAAG,mBAAmB,CAAC;IAC9D,IAAM,EAAE,GAAG,IAAI,CAAC;IAChB,IAAM,EAAE,GAAG,IAAI,GAAG,YAAY,GAAG,QAAQ,CAAC;IAC1C,IAAM,EAAE,GAAG,EAAE,CAAC;IAEd,IAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAC/C,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEzC,OAAO,qBACE,IAAI,cAAI,IAAI,wBACZ,EAAE,cAAI,EAAE,cAAI,EAAE,cAAI,EAAE,wBACpB,EAAE,cAAI,EAAE,wBACR,EAAE,cAAI,EAAE,cAAI,EAAE,cAAI,EAAE,iBACtB,CAAC;AACV,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './bezierPath';
2
+ export * from './loopBackPath';
3
+ export * from './selfConnectPath';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Edges/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './bezierPath';
2
+ export * from './loopBackPath';
3
+ export * from './selfConnectPath';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Edges/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function loopBackPath(srcX: any, srcY: any, dstX: any, dstY: any): string;
2
+ //# sourceMappingURL=loopBackPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loopBackPath.d.ts","sourceRoot":"","sources":["../../../../src/components/Edges/utils/loopBackPath.ts"],"names":[],"mappings":"AAGA,wBAAgB,YAAY,CAAC,IAAI,KAAA,EAAE,IAAI,KAAA,EAAE,IAAI,KAAA,EAAE,IAAI,KAAA,UA2ClD"}
@@ -0,0 +1,35 @@
1
+ // 计算回环线的路径
2
+ var OFFSET = 54;
3
+ export function loopBackPath(srcX, srcY, dstX, dstY) {
4
+ // 如果Y 轴反向上的距离小于 54,绘制一个圆弧,
5
+ if (Math.abs(srcY - dstY) < OFFSET) {
6
+ // 绘制一个圆弧
7
+ var radiusX = (srcX - dstX) * 0.6;
8
+ var radiusY = 50;
9
+ var edgePath = "M ".concat(srcX - 5, " ").concat(srcY, " A ").concat(radiusX, " ").concat(radiusY, " 0 1 0 ").concat(dstX + 2, " ").concat(dstY);
10
+ return edgePath;
11
+ }
12
+ else {
13
+ var isTopToBottom = srcY < dstY;
14
+ // 绘制一个反方向的贝塞尔曲线
15
+ var offset = 60;
16
+ var arrowOffsetX = 11;
17
+ var arrowOffsetY = 20;
18
+ var x3Offset = 3;
19
+ var _srcX = srcX + arrowOffsetX;
20
+ // end
21
+ var x1 = _srcX + arrowOffsetX;
22
+ var y1 = isTopToBottom ? srcY + offset / 3 : srcY - offset / 3;
23
+ var x2 = dstX - arrowOffsetX;
24
+ var y2 = isTopToBottom ? dstY - arrowOffsetY : dstY + arrowOffsetY;
25
+ var x3 = dstX + x3Offset;
26
+ var y3 = dstY;
27
+ var theta = Math.atan((y2 - y1) / (x2 - _srcX));
28
+ var sx = x1 - offset * Math.cos(theta);
29
+ var sy = y1 - offset * Math.sin(theta);
30
+ var dx = x2 + offset * Math.cos(theta);
31
+ var dy = y2 + offset * Math.sin(theta);
32
+ return "\n M".concat(srcX, " ").concat(srcY, "\n L ").concat(_srcX, " ").concat(srcY, "\n Q").concat(x1, " ").concat(y1, " ").concat(sx, " ").concat(sy, "\n L").concat(dx, " ").concat(dy, "\n Q").concat(x2, " ").concat(y2, " ").concat(x3 - arrowOffsetX + x3Offset, " ").concat(y3, " \n L").concat(x3, " ").concat(y3, "\n ");
33
+ }
34
+ }
35
+ //# sourceMappingURL=loopBackPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loopBackPath.js","sourceRoot":"","sources":["../../../../src/components/Edges/utils/loopBackPath.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,IAAM,MAAM,GAAG,EAAE,CAAC;AAElB,MAAM,UAAU,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACjD,2BAA2B;IAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC;QACnC,UAAU;QACV,IAAM,OAAO,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;QACpC,IAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAM,QAAQ,GAAG,YAAK,IAAI,GAAG,CAAC,cAAI,IAAI,gBAAM,OAAO,cAAI,OAAO,oBAC5D,IAAI,GAAG,CAAC,cACN,IAAI,CAAE,CAAC;QACX,OAAO,QAAQ,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,IAAM,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;QAClC,gBAAgB;QAChB,IAAM,MAAM,GAAG,EAAE,CAAC;QAClB,IAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAM,QAAQ,GAAG,CAAC,CAAC;QAEnB,IAAM,KAAK,GAAG,IAAI,GAAG,YAAY,CAAC;QAElC,MAAM;QACN,IAAM,EAAE,GAAG,KAAK,GAAG,YAAY,CAAC;QAChC,IAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC;QACjE,IAAM,EAAE,GAAG,IAAI,GAAG,YAAY,CAAC;QAC/B,IAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,GAAG,YAAY,CAAC;QACrE,IAAM,EAAE,GAAG,IAAI,GAAG,QAAQ,CAAC;QAC3B,IAAM,EAAE,GAAG,IAAI,CAAC;QAEhB,IAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC;QAClD,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzC,IAAM,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,qBACA,IAAI,cAAI,IAAI,yBACX,KAAK,cAAI,IAAI,wBACd,EAAE,cAAI,EAAE,cAAI,EAAE,cAAI,EAAE,wBACpB,EAAE,cAAI,EAAE,wBACR,EAAE,cAAI,EAAE,cAAI,EAAE,GAAG,YAAY,GAAG,QAAQ,cAAI,EAAE,0BAC9C,EAAE,cAAI,EAAE,eACV,CAAC;IACR,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function selfConnectPath(srcX: any, srcY: any, dstX: any, dstY: any): string;
2
+ //# sourceMappingURL=selfConnectPath.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selfConnectPath.d.ts","sourceRoot":"","sources":["../../../../src/components/Edges/utils/selfConnectPath.ts"],"names":[],"mappings":"AACA,wBAAgB,eAAe,CAAC,IAAI,KAAA,EAAE,IAAI,KAAA,EAAE,IAAI,KAAA,EAAE,IAAI,KAAA,UAuCrD"}
@@ -0,0 +1,25 @@
1
+ // 计算自环的路径
2
+ export function selfConnectPath(srcX, srcY, dstX, dstY) {
3
+ // 起点也是终点,画个圆
4
+ var radius = 10;
5
+ var x = srcX - 9;
6
+ var y = srcY;
7
+ // const y = srcY + 20;
8
+ var startAngle = 0; // 开始角度(弧度)
9
+ var endAngle = (345 * Math.PI) / 180; // 结束角度(330 度转换为弧度)
10
+ var triangleSize = 10; // 三角形的大小
11
+ // 计算圆弧的起始点坐标
12
+ var startX = x + radius * Math.cos(startAngle);
13
+ var startY = y + radius * Math.sin(startAngle);
14
+ // 计算圆弧的终点坐标
15
+ var endX = x + radius * Math.cos(endAngle);
16
+ var endY = y + radius * Math.sin(endAngle);
17
+ // 计算箭头两头边的夹角
18
+ var deg1 = (95 * Math.PI) / 180;
19
+ var deg2 = (12 * Math.PI) / 180;
20
+ var arrowLength = 7;
21
+ // 创建 SVG 路径
22
+ var path = "\n M ".concat(startX, " ").concat(startY, " \n A ").concat(radius, " ").concat(radius, " 0 1 0 ").concat(endX, " ").concat(endY, " \n M ").concat(startX, " ").concat(startY, "\n L ").concat(startX - arrowLength * Math.cos(deg1), " ").concat(startY + arrowLength * Math.sin(deg1), "\n L ").concat(startX, " ").concat(startY, "\n L ").concat(startX + arrowLength * Math.cos(deg2), " ").concat(startY + arrowLength * Math.sin(deg2), "\n");
23
+ return path;
24
+ }
25
+ //# sourceMappingURL=selfConnectPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selfConnectPath.js","sourceRoot":"","sources":["../../../../src/components/Edges/utils/selfConnectPath.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,MAAM,UAAU,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IACpD,aAAa;IACb,IAAM,MAAM,GAAG,EAAE,CAAC;IAClB,IAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;IACnB,IAAM,CAAC,GAAG,IAAI,CAAC;IACf,uBAAuB;IAEvB,IAAM,UAAU,GAAG,CAAC,CAAC,CAAC,WAAW;IACjC,IAAM,QAAQ,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,mBAAmB;IAC3D,IAAM,YAAY,GAAG,EAAE,CAAC,CAAC,SAAS;IAElC,aAAa;IACb,IAAM,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACjD,IAAM,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAEjD,YAAY;IACZ,IAAM,IAAI,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAM,IAAI,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE7C,aAAa;IACb,IAAM,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAClC,IAAM,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAClC,IAAM,WAAW,GAAG,CAAC,CAAC;IAEtB,YAAY;IACZ,IAAM,IAAI,GAAG,gBACT,MAAM,cAAI,MAAM,oBAChB,MAAM,cAAI,MAAM,oBAAU,IAAI,cAAI,IAAI,oBACtC,MAAM,cAAI,MAAM,mBAChB,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cACvC,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAEnC,MAAM,cAAI,MAAM,mBAChB,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cACvC,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAExC,CAAC;IAEA,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { Group } from 'ink-new';
2
+ import { BaseNode } from './BaseNode';
3
+ import { IBaseNodeConfig } from '../../types';
4
+ interface IALDNodeConfig extends IBaseNodeConfig {
5
+ [key: string]: any;
6
+ }
7
+ export declare class ALDNode<T extends IALDNodeConfig> extends BaseNode<T> {
8
+ static type: string;
9
+ render(data: IALDNodeConfig, container: Group): void;
10
+ update(data: IALDNodeConfig, container: Group): void;
11
+ destroy(data: IALDNodeConfig, container: Group): void;
12
+ private _renderHeader;
13
+ private _renderBody;
14
+ renderHeader(data: IALDNodeConfig, container: Group): void;
15
+ renderBody(data: IALDNodeConfig, container: Group): void;
16
+ }
17
+ export {};
18
+ //# sourceMappingURL=ALDNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ALDNode.d.ts","sourceRoot":"","sources":["../../../src/components/Nodes/ALDNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,UAAU,cAAe,SAAQ,eAAe;IAC9C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,qBAAa,OAAO,CAAC,CAAC,SAAS,cAAc,CAAE,SAAQ,QAAQ,CAAC,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAc;IAEjC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;IAKpD,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;IAKpD,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;IAIrD,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,WAAW;IAMnB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;IAE1D,UAAU,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;CACzD"}
@@ -0,0 +1,34 @@
1
+ import { __extends } from "tslib";
2
+ import { BaseNode } from './BaseNode';
3
+ var ALDNode = /** @class */ (function (_super) {
4
+ __extends(ALDNode, _super);
5
+ function ALDNode() {
6
+ return _super !== null && _super.apply(this, arguments) || this;
7
+ }
8
+ ALDNode.prototype.render = function (data, container) {
9
+ this._renderHeader();
10
+ this._renderBody();
11
+ };
12
+ ALDNode.prototype.update = function (data, container) {
13
+ this.container.removeAllChildren();
14
+ this.render(this.config, this.container);
15
+ };
16
+ ALDNode.prototype.destroy = function (data, container) {
17
+ throw new Error('Method not implemented.');
18
+ };
19
+ ALDNode.prototype._renderHeader = function () {
20
+ // render header content
21
+ this.renderHeader(this.config, this.container);
22
+ };
23
+ ALDNode.prototype._renderBody = function () {
24
+ //render body container
25
+ // render body content
26
+ this.renderBody(this.config, this.container);
27
+ };
28
+ ALDNode.prototype.renderHeader = function (data, container) { };
29
+ ALDNode.prototype.renderBody = function (data, container) { };
30
+ ALDNode.type = 'ALD_NODE';
31
+ return ALDNode;
32
+ }(BaseNode));
33
+ export { ALDNode };
34
+ //# sourceMappingURL=ALDNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ALDNode.js","sourceRoot":"","sources":["../../../src/components/Nodes/ALDNode.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAOtC;IAAuD,2BAAW;IAAlE;;IA+BA,CAAC;IA5BC,wBAAM,GAAN,UAAO,IAAoB,EAAE,SAAgB;QAC3C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,wBAAM,GAAN,UAAO,IAAoB,EAAE,SAAgB;QAC3C,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,yBAAO,GAAP,UAAQ,IAAoB,EAAE,SAAgB;QAC5C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAEO,+BAAa,GAArB;QACE,wBAAwB;QACxB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAEO,6BAAW,GAAnB;QACE,uBAAuB;QACvB,sBAAsB;QACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,8BAAY,GAAZ,UAAa,IAAoB,EAAE,SAAgB,IAAS,CAAC;IAE7D,4BAAU,GAAV,UAAW,IAAoB,EAAE,SAAgB,IAAS,CAAC;IA7BpD,YAAI,GAAW,UAAU,CAAC;IA8BnC,cAAC;CAAA,AA/BD,CAAuD,QAAQ,GA+B9D;SA/BY,OAAO"}
@@ -0,0 +1,37 @@
1
+ import { vec2 } from 'gl-matrix';
2
+ import { IBaseNodeConfig, INode } from '../../types/Node';
3
+ import { Group, Rect, Image, Text, PointLike, BoundingRect } from 'ink-new';
4
+ import { Graph } from '../../graph';
5
+ export declare class BaseNode<NodeConfig extends IBaseNodeConfig = IBaseNodeConfig> implements INode {
6
+ graph: Graph;
7
+ config: NodeConfig;
8
+ id: string;
9
+ container: Group;
10
+ headerGroup: Group;
11
+ bgGroup: Group;
12
+ headerName: Text;
13
+ headerRect: Rect;
14
+ bgRect: Rect;
15
+ entityTypeIcon: Image;
16
+ constructor(graph: Graph, config: NodeConfig);
17
+ get visible(): boolean;
18
+ render(config: NodeConfig, container: Group): void;
19
+ initNodeContainer(): void;
20
+ getConfig(): NodeConfig;
21
+ setConfig(cfg: any): void;
22
+ getWidth(): number;
23
+ getHeight(): number;
24
+ getPosition(): PointLike;
25
+ setPosition(pos: vec2): void;
26
+ getBBox(): BoundingRect;
27
+ getContainer(): Group;
28
+ onTransformChange(data: NodeConfig, container: Group): void;
29
+ onDataChange(data: NodeConfig, container: Group): void;
30
+ onPositionChange(data: NodeConfig, container: Group): void;
31
+ update(data: NodeConfig, container: Group): void;
32
+ updateStyle(style: Partial<IBaseNodeConfig['style']>): void;
33
+ destroy(data: NodeConfig, container: Group): void;
34
+ renderNodeHeader(): void;
35
+ updateNodeHeight(): void;
36
+ }
37
+ //# sourceMappingURL=BaseNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../src/components/Nodes/BaseNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAW5E,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,qBAAa,QAAQ,CAAC,UAAU,SAAS,eAAe,GAAG,eAAe,CACxE,YAAW,KAAK;IAWG,KAAK,EAAE,KAAK;IAAS,MAAM,EAAE,UAAU;IAT1D,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,KAAK,CAAC;IACjB,WAAW,EAAE,KAAK,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC;IACf,UAAU,EAAE,IAAI,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC;IACb,cAAc,EAAE,KAAK,CAAC;gBAEH,KAAK,EAAE,KAAK,EAAS,MAAM,EAAE,UAAU;IAU1D,IAAI,OAAO,YAEV;IAED,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK;IAK3C,iBAAiB;IASjB,SAAS;IAIT,SAAS,CAAC,GAAG,EAAE,GAAG;IAQlB,QAAQ;IAIR,SAAS;IAIT,WAAW,IAAI,SAAS;IAKxB,WAAW,CAAC,GAAG,EAAE,IAAI;IAkBrB,OAAO,IAAI,YAAY;IAIvB,YAAY;IAIZ,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK;IAEpD,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK;IAE/C,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK;IAEnD,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,GAAG,IAAI;IAahD,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAkBpD,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK;IAE1C,gBAAgB;IA+GhB,gBAAgB;CAKjB"}