@aloudata/ink-lineage 0.0.1-beta.2 → 0.0.1-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 (234) hide show
  1. package/dist/assets/big/dataSourceTypeIcon.d.ts +23 -0
  2. package/dist/assets/big/dataSourceTypeIcon.d.ts.map +1 -0
  3. package/dist/assets/big/dataSourceTypeIcon.js +23 -0
  4. package/dist/assets/big/dataSourceTypeIcon.js.map +1 -0
  5. package/dist/assets/big/entityType.d.ts +2 -0
  6. package/dist/assets/big/entityType.d.ts.map +1 -0
  7. package/dist/assets/big/entityType.js +2 -0
  8. package/dist/assets/big/entityType.js.map +1 -0
  9. package/dist/assets/big/index.d.ts +6 -0
  10. package/dist/assets/big/index.d.ts.map +1 -0
  11. package/{src/assets/big/index.ts → dist/assets/big/index.js} +2 -1
  12. package/dist/assets/big/index.js.map +1 -0
  13. package/dist/assets/big/lineageIcon.d.ts +14 -0
  14. package/dist/assets/big/lineageIcon.d.ts.map +1 -0
  15. package/dist/assets/big/lineageIcon.js +14 -0
  16. package/dist/assets/big/lineageIcon.js.map +1 -0
  17. package/dist/assets/big/tableTypeIcon.d.ts +7 -0
  18. package/dist/assets/big/tableTypeIcon.d.ts.map +1 -0
  19. package/dist/assets/big/tableTypeIcon.js +7 -0
  20. package/dist/assets/big/tableTypeIcon.js.map +1 -0
  21. package/dist/assets/big/tipIcon.d.ts +2 -0
  22. package/dist/assets/big/tipIcon.d.ts.map +1 -0
  23. package/dist/assets/big/tipIcon.js +2 -0
  24. package/dist/assets/big/tipIcon.js.map +1 -0
  25. package/dist/assets/index.d.ts +5 -0
  26. package/dist/assets/index.d.ts.map +1 -0
  27. package/dist/assets/index.js +8 -0
  28. package/dist/assets/index.js.map +1 -0
  29. package/dist/components/Edges/DefaultEdge.d.ts +28 -0
  30. package/dist/components/Edges/DefaultEdge.d.ts.map +1 -0
  31. package/dist/components/Edges/DefaultEdge.js +144 -0
  32. package/dist/components/Edges/DefaultEdge.js.map +1 -0
  33. package/dist/components/Edges/FoldEdge.d.ts +12 -0
  34. package/dist/components/Edges/FoldEdge.d.ts.map +1 -0
  35. package/dist/components/Edges/FoldEdge.js +91 -0
  36. package/dist/components/Edges/FoldEdge.js.map +1 -0
  37. package/dist/components/Edges/LineageEdge.d.ts +10 -0
  38. package/dist/components/Edges/LineageEdge.d.ts.map +1 -0
  39. package/dist/components/Edges/LineageEdge.js +24 -0
  40. package/dist/components/Edges/LineageEdge.js.map +1 -0
  41. package/dist/components/Edges/index.d.ts +4 -0
  42. package/dist/components/Edges/index.d.ts.map +1 -0
  43. package/dist/components/Edges/index.js +4 -0
  44. package/dist/components/Edges/index.js.map +1 -0
  45. package/dist/components/Nodes/AssetNode.d.ts +26 -0
  46. package/dist/components/Nodes/AssetNode.d.ts.map +1 -0
  47. package/dist/components/Nodes/AssetNode.js +354 -0
  48. package/dist/components/Nodes/AssetNode.js.map +1 -0
  49. package/dist/components/Nodes/ColumnNode.d.ts +24 -0
  50. package/dist/components/Nodes/ColumnNode.d.ts.map +1 -0
  51. package/dist/components/Nodes/ColumnNode.js +387 -0
  52. package/dist/components/Nodes/ColumnNode.js.map +1 -0
  53. package/dist/components/Nodes/CustomNode.d.ts +10 -0
  54. package/dist/components/Nodes/CustomNode.d.ts.map +1 -0
  55. package/dist/components/Nodes/CustomNode.js +59 -0
  56. package/dist/components/Nodes/CustomNode.js.map +1 -0
  57. package/dist/components/Nodes/DefaultNode.d.ts +20 -0
  58. package/dist/components/Nodes/DefaultNode.d.ts.map +1 -0
  59. package/dist/components/Nodes/DefaultNode.js +48 -0
  60. package/dist/components/Nodes/DefaultNode.js.map +1 -0
  61. package/dist/components/Nodes/DowngradeNode.d.ts +11 -0
  62. package/dist/components/Nodes/DowngradeNode.d.ts.map +1 -0
  63. package/dist/components/Nodes/DowngradeNode.js +89 -0
  64. package/dist/components/Nodes/DowngradeNode.js.map +1 -0
  65. package/dist/components/Nodes/TableNode.d.ts +25 -0
  66. package/dist/components/Nodes/TableNode.d.ts.map +1 -0
  67. package/dist/components/Nodes/TableNode.js +410 -0
  68. package/dist/components/Nodes/TableNode.js.map +1 -0
  69. package/dist/components/Nodes/index.d.ts +5 -0
  70. package/dist/components/Nodes/index.d.ts.map +1 -0
  71. package/{src/components/Nodes/index.ts → dist/components/Nodes/index.js} +1 -0
  72. package/dist/components/Nodes/index.js.map +1 -0
  73. package/dist/components/index.d.ts +3 -0
  74. package/dist/components/index.d.ts.map +1 -0
  75. package/dist/components/index.js +3 -0
  76. package/dist/components/index.js.map +1 -0
  77. package/dist/constant/index.d.ts +2 -0
  78. package/dist/constant/index.d.ts.map +1 -0
  79. package/dist/constant/index.js +2 -0
  80. package/dist/constant/index.js.map +1 -0
  81. package/dist/constant/nodeStyle.d.ts +76 -0
  82. package/dist/constant/nodeStyle.d.ts.map +1 -0
  83. package/dist/constant/nodeStyle.js +112 -0
  84. package/dist/constant/nodeStyle.js.map +1 -0
  85. package/dist/index.d.ts +6 -0
  86. package/dist/index.d.ts.map +1 -0
  87. package/{src/index.ts → dist/index.js} +1 -1
  88. package/dist/index.js.map +1 -0
  89. package/dist/manager/BaseManager.d.ts +10 -0
  90. package/dist/manager/BaseManager.d.ts.map +1 -0
  91. package/dist/manager/BaseManager.js +11 -0
  92. package/dist/manager/BaseManager.js.map +1 -0
  93. package/dist/manager/DataProcessor.d.ts +31 -0
  94. package/dist/manager/DataProcessor.d.ts.map +1 -0
  95. package/dist/manager/DataProcessor.js +561 -0
  96. package/dist/manager/DataProcessor.js.map +1 -0
  97. package/dist/manager/ExpandManager.d.ts +15 -0
  98. package/dist/manager/ExpandManager.d.ts.map +1 -0
  99. package/dist/manager/ExpandManager.js +75 -0
  100. package/dist/manager/ExpandManager.js.map +1 -0
  101. package/dist/manager/FoldLineageManager.d.ts +29 -0
  102. package/dist/manager/FoldLineageManager.d.ts.map +1 -0
  103. package/dist/manager/FoldLineageManager.js +156 -0
  104. package/dist/manager/FoldLineageManager.js.map +1 -0
  105. package/dist/manager/GraphEventManager.d.ts +13 -0
  106. package/dist/manager/GraphEventManager.d.ts.map +1 -0
  107. package/dist/manager/GraphEventManager.js +65 -0
  108. package/dist/manager/GraphEventManager.js.map +1 -0
  109. package/dist/manager/LineageManager.d.ts +108 -0
  110. package/dist/manager/LineageManager.d.ts.map +1 -0
  111. package/dist/manager/LineageManager.js +459 -0
  112. package/dist/manager/LineageManager.js.map +1 -0
  113. package/dist/manager/RightKeyMenuManager.d.ts +24 -0
  114. package/dist/manager/RightKeyMenuManager.d.ts.map +1 -0
  115. package/dist/manager/RightKeyMenuManager.js +80 -0
  116. package/dist/manager/RightKeyMenuManager.js.map +1 -0
  117. package/dist/manager/SearchNodeManager.d.ts +36 -0
  118. package/dist/manager/SearchNodeManager.d.ts.map +1 -0
  119. package/dist/manager/SearchNodeManager.js +131 -0
  120. package/dist/manager/SearchNodeManager.js.map +1 -0
  121. package/dist/manager/ToolbarManager.d.ts +13 -0
  122. package/dist/manager/ToolbarManager.d.ts.map +1 -0
  123. package/dist/manager/ToolbarManager.js +22 -0
  124. package/dist/manager/ToolbarManager.js.map +1 -0
  125. package/dist/manager/index.d.ts +9 -0
  126. package/dist/manager/index.d.ts.map +1 -0
  127. package/{src/manager/index.ts → dist/manager/index.js} +1 -0
  128. package/dist/manager/index.js.map +1 -0
  129. package/dist/manager/nodeManager/AssetEventManager.d.ts +22 -0
  130. package/dist/manager/nodeManager/AssetEventManager.d.ts.map +1 -0
  131. package/dist/manager/nodeManager/AssetEventManager.js +327 -0
  132. package/dist/manager/nodeManager/AssetEventManager.js.map +1 -0
  133. package/dist/manager/nodeManager/BaseEventManager.d.ts +21 -0
  134. package/dist/manager/nodeManager/BaseEventManager.d.ts.map +1 -0
  135. package/dist/manager/nodeManager/BaseEventManager.js +43 -0
  136. package/dist/manager/nodeManager/BaseEventManager.js.map +1 -0
  137. package/dist/manager/nodeManager/ColumnEventManager.d.ts +20 -0
  138. package/dist/manager/nodeManager/ColumnEventManager.d.ts.map +1 -0
  139. package/dist/manager/nodeManager/ColumnEventManager.js +354 -0
  140. package/dist/manager/nodeManager/ColumnEventManager.js.map +1 -0
  141. package/dist/manager/nodeManager/CustomEventManager.d.ts +7 -0
  142. package/dist/manager/nodeManager/CustomEventManager.d.ts.map +1 -0
  143. package/dist/manager/nodeManager/CustomEventManager.js +14 -0
  144. package/dist/manager/nodeManager/CustomEventManager.js.map +1 -0
  145. package/dist/manager/nodeManager/TableEventManager.d.ts +10 -0
  146. package/dist/manager/nodeManager/TableEventManager.d.ts.map +1 -0
  147. package/dist/manager/nodeManager/TableEventManager.js +78 -0
  148. package/dist/manager/nodeManager/TableEventManager.js.map +1 -0
  149. package/dist/manager/nodeManager/index.d.ts +4 -0
  150. package/dist/manager/nodeManager/index.d.ts.map +1 -0
  151. package/{src/manager/nodeManager/index.ts → dist/manager/nodeManager/index.js} +2 -1
  152. package/dist/manager/nodeManager/index.js.map +1 -0
  153. package/{src/types/NodeConfig.ts → dist/types/NodeConfig.d.ts} +17 -19
  154. package/dist/types/NodeConfig.d.ts.map +1 -0
  155. package/dist/types/NodeConfig.js +2 -0
  156. package/dist/types/NodeConfig.js.map +1 -0
  157. package/dist/types/eventEnum.d.ts +42 -0
  158. package/dist/types/eventEnum.d.ts.map +1 -0
  159. package/dist/types/eventEnum.js +46 -0
  160. package/dist/types/eventEnum.js.map +1 -0
  161. package/dist/types/index.d.ts +4 -0
  162. package/dist/types/index.d.ts.map +1 -0
  163. package/dist/types/index.js +4 -0
  164. package/dist/types/index.js.map +1 -0
  165. package/dist/types/manager.d.ts +40 -0
  166. package/dist/types/manager.d.ts.map +1 -0
  167. package/dist/types/manager.js +34 -0
  168. package/dist/types/manager.js.map +1 -0
  169. package/dist/types/node.d.ts +201 -0
  170. package/dist/types/node.d.ts.map +1 -0
  171. package/dist/types/node.js +129 -0
  172. package/dist/types/node.js.map +1 -0
  173. package/dist/utils/downgradeNode.d.ts +15 -0
  174. package/dist/utils/downgradeNode.d.ts.map +1 -0
  175. package/{src/utils/downgradeNode.ts → dist/utils/downgradeNode.js} +3 -5
  176. package/dist/utils/downgradeNode.js.map +1 -0
  177. package/dist/utils/foldNode.d.ts +14 -0
  178. package/dist/utils/foldNode.d.ts.map +1 -0
  179. package/dist/utils/foldNode.js +232 -0
  180. package/dist/utils/foldNode.js.map +1 -0
  181. package/dist/utils/getIconByType.d.ts +4 -0
  182. package/dist/utils/getIconByType.d.ts.map +1 -0
  183. package/dist/utils/getIconByType.js +72 -0
  184. package/dist/utils/getIconByType.js.map +1 -0
  185. package/dist/utils/index.d.ts +4 -0
  186. package/dist/utils/index.d.ts.map +1 -0
  187. package/{src/utils/index.ts → dist/utils/index.js} +1 -0
  188. package/dist/utils/index.js.map +1 -0
  189. package/dist/utils/node.d.ts +14 -0
  190. package/dist/utils/node.d.ts.map +1 -0
  191. package/dist/utils/node.js +242 -0
  192. package/dist/utils/node.js.map +1 -0
  193. package/package.json +6 -5
  194. package/src/assets/big/dataSourceTypeIcon.ts +0 -65
  195. package/src/assets/big/entityType.ts +0 -1
  196. package/src/assets/big/lineageIcon.ts +0 -35
  197. package/src/assets/big/tableTypeIcon.ts +0 -17
  198. package/src/assets/big/tipIcon.ts +0 -1
  199. package/src/assets/index.ts +0 -14
  200. package/src/components/Edges/DefaultEdge.ts +0 -196
  201. package/src/components/Edges/FoldEdge.ts +0 -97
  202. package/src/components/Edges/LineageEdge.ts +0 -24
  203. package/src/components/Edges/index.ts +0 -3
  204. package/src/components/Nodes/AssetNode.ts +0 -438
  205. package/src/components/Nodes/ColumnNode.ts +0 -491
  206. package/src/components/Nodes/CustomNode.ts +0 -63
  207. package/src/components/Nodes/DefaultNode.ts +0 -74
  208. package/src/components/Nodes/DowngradeNode.ts +0 -115
  209. package/src/components/Nodes/TableNode.ts +0 -534
  210. package/src/components/index.ts +0 -2
  211. package/src/constant/index.ts +0 -1
  212. package/src/constant/nodeStyle.ts +0 -141
  213. package/src/manager/BaseManager.ts +0 -20
  214. package/src/manager/DataProcessor.ts +0 -782
  215. package/src/manager/ExpandManager.ts +0 -93
  216. package/src/manager/FoldLineageManager.ts +0 -196
  217. package/src/manager/GraphEventManager.ts +0 -90
  218. package/src/manager/LineageManager.ts +0 -680
  219. package/src/manager/RightKeyMenuManager.ts +0 -114
  220. package/src/manager/SearchNodeManager.ts +0 -188
  221. package/src/manager/ToolbarManager.ts +0 -42
  222. package/src/manager/nodeManager/AssetEventManager.ts +0 -442
  223. package/src/manager/nodeManager/BaseEventManager.ts +0 -68
  224. package/src/manager/nodeManager/ColumnEventManager.ts +0 -467
  225. package/src/manager/nodeManager/CustomEventManager.ts +0 -11
  226. package/src/manager/nodeManager/TableEventManager.ts +0 -87
  227. package/src/types/eventEnum.ts +0 -58
  228. package/src/types/index.ts +0 -3
  229. package/src/types/manager.ts +0 -75
  230. package/src/types/node.ts +0 -246
  231. package/src/utils/foldNode.ts +0 -345
  232. package/src/utils/getIconByType.ts +0 -104
  233. package/src/utils/node.ts +0 -294
  234. package/tsconfig.json +0 -30
@@ -0,0 +1,561 @@
1
+ import { __assign, __extends, __read, __spreadArray, __values } from "tslib";
2
+ import { getNodeHeight, groupNodesByEdgesAndDirection, } from '@aloudata/ink-graph-new';
3
+ import { EEntityType, EDirection, EDashType, } from '../types';
4
+ import _ from 'lodash';
5
+ import { BaseManager } from './BaseManager';
6
+ import { COL_HEIGHT, CUSTOM_NODE, LINEAGE_EDGE, NODE_WIDTH, TABLE_HEADER_HEIGHT, TABLE_NODE, } from '../constant';
7
+ var DataProcessor = /** @class */ (function (_super) {
8
+ __extends(DataProcessor, _super);
9
+ function DataProcessor(lineageManager) {
10
+ return _super.call(this, lineageManager) || this;
11
+ }
12
+ DataProcessor.parseData = function (data, startNodes) {
13
+ DataProcessor.startNodes = startNodes;
14
+ // parse data here
15
+ var entities = data.entities, relations = data.relations;
16
+ var nodes = DataProcessor.parseEntities(entities, startNodes);
17
+ var edges = DataProcessor.parseRelations(relations);
18
+ var res = {
19
+ nodes: nodes,
20
+ edges: edges,
21
+ };
22
+ return res;
23
+ };
24
+ DataProcessor.parseEntities = function (entities, startNodes) {
25
+ var nodesId = [];
26
+ var nodes = [];
27
+ entities.forEach(function (entity) {
28
+ if (nodesId.includes(entity.guid))
29
+ return;
30
+ var isStartNode = startNodes.includes(entity.guid);
31
+ var node = null;
32
+ switch (entity.typeCode) {
33
+ case 'Table':
34
+ case 'View':
35
+ node = DataProcessor.parseTableEntity(entity, isStartNode);
36
+ break;
37
+ default:
38
+ node = DataProcessor.parseCustomEntity(entity, isStartNode);
39
+ break;
40
+ }
41
+ if (node) {
42
+ nodes.push(node);
43
+ nodesId.push(node.id);
44
+ }
45
+ });
46
+ return nodes;
47
+ };
48
+ DataProcessor.parseRelations = function (relations) {
49
+ var existedEdgesMap = new Map();
50
+ var edges = [];
51
+ relations.forEach(function (relation) {
52
+ var edgeId = "".concat(relation.srcGuid, "___").concat(relation.dstGuid);
53
+ if (existedEdgesMap.has(edgeId)) {
54
+ if (existedEdgesMap.get(edgeId) !== relation.relationTypeCode) {
55
+ var edge_1 = edges.find(function (e) { return e.id === edgeId; });
56
+ if (edge_1) {
57
+ edge_1.relationType = EDashType.ALL;
58
+ edge_1.style.strokeDasharray = [0];
59
+ }
60
+ }
61
+ return;
62
+ }
63
+ var isIndirect = relation.relationTypeCode.includes('Indirect');
64
+ var edge = {
65
+ id: edgeId,
66
+ type: LINEAGE_EDGE,
67
+ data: __assign({}, relation),
68
+ source: relation.srcGuid,
69
+ target: relation.dstGuid,
70
+ visible: true,
71
+ isActive: false,
72
+ isFolded: false,
73
+ canBeFold: false,
74
+ relationType: isIndirect ? EDashType.INDIRECT : EDashType.DIRECT,
75
+ style: {
76
+ stroke: '#B1B1B1',
77
+ strokeDasharray: isIndirect ? [2] : [0],
78
+ lineWidth: 1,
79
+ },
80
+ points: [],
81
+ };
82
+ edges.push(edge);
83
+ existedEdgesMap.set(edge.id, edge.data.relationTypeCode);
84
+ });
85
+ return edges;
86
+ };
87
+ DataProcessor.parseTableEntity = function (entity, isStartNode) {
88
+ var _a, _b, _c, _d, _e, _f, _g;
89
+ var cols = Array.isArray((_a = entity.properties) === null || _a === void 0 ? void 0 : _a.columns)
90
+ ? ((_c = (_b = entity.properties) === null || _b === void 0 ? void 0 : _b.columns) === null || _c === void 0 ? void 0 : _c.map(function (col) {
91
+ var _a;
92
+ return DataProcessor.parseColumn(col, isStartNode, entity.guid, (_a = entity.properties) === null || _a === void 0 ? void 0 : _a.name);
93
+ })) || []
94
+ : [];
95
+ // 只有起始资产的relatedCols一开始有元素
96
+ var relatedCols = Array.isArray((_d = entity.properties) === null || _d === void 0 ? void 0 : _d.columns)
97
+ ? ((_f = (_e = entity.properties) === null || _e === void 0 ? void 0 : _e.columns) === null || _f === void 0 ? void 0 : _f.map(function (col) {
98
+ var _a;
99
+ return DataProcessor.parseRelatedColumn(col, isStartNode, entity.guid, (_a = entity.properties) === null || _a === void 0 ? void 0 : _a.name);
100
+ })) || []
101
+ : [];
102
+ var data = {
103
+ id: entity.guid,
104
+ type: TABLE_NODE,
105
+ data: __assign(__assign({}, entity.properties), { type: ((_g = entity.properties) === null || _g === void 0 ? void 0 : _g.type) || EEntityType.TABLE, guid: entity.guid, typeCode: entity.typeCode }),
106
+ style: {
107
+ width: NODE_WIDTH + 2,
108
+ height: TABLE_HEADER_HEIGHT,
109
+ headerHeight: TABLE_HEADER_HEIGHT,
110
+ },
111
+ position: {
112
+ x: 0,
113
+ y: 0,
114
+ },
115
+ isStartNode: isStartNode,
116
+ isOpen: isStartNode,
117
+ visible: true,
118
+ isRelated: false,
119
+ isFolded: false,
120
+ isExpandOutput: false,
121
+ isExpandInput: false,
122
+ canExpandInput: false,
123
+ canExpandOutput: false,
124
+ canFoldInput: false,
125
+ canFoldOutput: false,
126
+ hasMoreInput: true,
127
+ hasMoreOutput: true,
128
+ children: cols,
129
+ pagination: {
130
+ pageNum: 1,
131
+ pageSize: 10,
132
+ total: 0,
133
+ totalPage: 0,
134
+ },
135
+ relatedColumns: relatedCols,
136
+ };
137
+ data.style.height = getNodeHeight(data);
138
+ return data;
139
+ };
140
+ DataProcessor.parseColumn = function (column, isStartNode, tableId, tableName) {
141
+ return {
142
+ data: __assign({}, column),
143
+ type: '',
144
+ style: {
145
+ width: NODE_WIDTH + 2,
146
+ height: COL_HEIGHT,
147
+ headerHeight: COL_HEIGHT,
148
+ },
149
+ position: { x: 8, y: 0 },
150
+ id: column.guid,
151
+ tableId: tableId,
152
+ tableName: column.tableName || tableName,
153
+ visible: true,
154
+ isFolded: false,
155
+ isStartNode: isStartNode,
156
+ isRelated: false,
157
+ canExpandInput: false,
158
+ canExpandOutput: false,
159
+ canFoldInput: false,
160
+ canFoldOutput: false,
161
+ hasMoreInput: true,
162
+ hasMoreOutput: true,
163
+ };
164
+ };
165
+ DataProcessor.parseRelatedColumn = function (column, isStartNode, tableId, tableName) {
166
+ return {
167
+ data: __assign({}, column),
168
+ type: '',
169
+ style: {
170
+ width: NODE_WIDTH + 2,
171
+ height: COL_HEIGHT,
172
+ headerHeight: COL_HEIGHT,
173
+ },
174
+ position: { x: 0, y: 0 },
175
+ id: column.guid,
176
+ tableId: tableId,
177
+ tableName: column.tableName || tableName,
178
+ visible: true,
179
+ isFolded: false,
180
+ isStartNode: isStartNode,
181
+ isRelated: true,
182
+ isRelatedColumn: true,
183
+ canExpandInput: false,
184
+ canExpandOutput: false,
185
+ canFoldInput: false,
186
+ canFoldOutput: false,
187
+ hasMoreInput: true,
188
+ hasMoreOutput: true,
189
+ };
190
+ };
191
+ DataProcessor.parseCustomEntity = function (entity, isStartNode) {
192
+ var _a, _b, _c, _d;
193
+ var data = {
194
+ id: entity.guid,
195
+ type: CUSTOM_NODE,
196
+ data: __assign(__assign({}, entity.properties), { type: ((_a = entity.properties) === null || _a === void 0 ? void 0 : _a.type) || EEntityType.TABLE, guid: entity.guid, typeCode: entity.typeCode, typeCodeName: entity.typeCodeName }),
197
+ style: {
198
+ width: NODE_WIDTH + 2,
199
+ height: TABLE_HEADER_HEIGHT,
200
+ headerHeight: TABLE_HEADER_HEIGHT,
201
+ },
202
+ position: {
203
+ x: 0,
204
+ y: 0,
205
+ },
206
+ isStartNode: isStartNode,
207
+ isOpen: isStartNode,
208
+ visible: true,
209
+ isRelated: false,
210
+ canExpandInput: false,
211
+ canExpandOutput: false,
212
+ canFoldInput: false,
213
+ canFoldOutput: false,
214
+ hasMoreInput: true,
215
+ hasMoreOutput: true,
216
+ children: Array.isArray((_b = entity.properties) === null || _b === void 0 ? void 0 : _b.columns)
217
+ ? ((_d = (_c = entity.properties) === null || _c === void 0 ? void 0 : _c.columns) === null || _d === void 0 ? void 0 : _d.map(function (col) {
218
+ var _a;
219
+ return DataProcessor.parseColumn(col, isStartNode, entity.guid, (_a = entity.properties) === null || _a === void 0 ? void 0 : _a.name);
220
+ })) || []
221
+ : [],
222
+ pagination: {
223
+ pageNum: 1,
224
+ pageSize: 10,
225
+ total: 0,
226
+ totalPage: 0,
227
+ },
228
+ relatedColumns: [],
229
+ };
230
+ data.style.height = getNodeHeight(data);
231
+ return data;
232
+ };
233
+ DataProcessor.prototype.updateSideIconVisible = function (data) {
234
+ var e_1, _a, e_2, _b;
235
+ if (_.isNil(data))
236
+ return;
237
+ var nodesConfig = data.nodes.filter(function (cfg) { return cfg.visible; });
238
+ var edgesConfig = data.edges.filter(function (cfg) { return cfg.visible; });
239
+ if (!nodesConfig)
240
+ return;
241
+ var startNodeIndex = nodesConfig.findIndex(function (node) { return node.isStartNode; });
242
+ if (startNodeIndex < 0)
243
+ return;
244
+ var startNodeCfg = nodesConfig[startNodeIndex];
245
+ if (!startNodeCfg)
246
+ return;
247
+ var nodesConfigMap = new Map();
248
+ nodesConfig === null || nodesConfig === void 0 ? void 0 : nodesConfig.forEach(function (n) {
249
+ var _a;
250
+ nodesConfigMap.set(n.id, n);
251
+ (_a = n.children) === null || _a === void 0 ? void 0 : _a.forEach(function (child) {
252
+ nodesConfigMap.set(child.id, child);
253
+ });
254
+ });
255
+ var inputGroupedData = groupNodesByEdgesAndDirection(startNodeCfg, nodesConfigMap, edgesConfig, EDirection.INPUT);
256
+ var outputGroupedData = groupNodesByEdgesAndDirection(startNodeCfg, nodesConfigMap, edgesConfig, EDirection.OUTPUT);
257
+ if (!inputGroupedData && !outputGroupedData)
258
+ return;
259
+ var inputGroupNodes = inputGroupedData.groupedNodes;
260
+ var outputGroupNodes = outputGroupedData.groupedNodes;
261
+ // 两个map合并
262
+ var groupedNodes = new Map();
263
+ if (inputGroupNodes) {
264
+ try {
265
+ for (var inputGroupNodes_1 = __values(inputGroupNodes), inputGroupNodes_1_1 = inputGroupNodes_1.next(); !inputGroupNodes_1_1.done; inputGroupNodes_1_1 = inputGroupNodes_1.next()) {
266
+ var _c = __read(inputGroupNodes_1_1.value, 2), key = _c[0], value = _c[1];
267
+ if (groupedNodes.has(key))
268
+ continue;
269
+ groupedNodes.set(key, value);
270
+ }
271
+ }
272
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
273
+ finally {
274
+ try {
275
+ if (inputGroupNodes_1_1 && !inputGroupNodes_1_1.done && (_a = inputGroupNodes_1.return)) _a.call(inputGroupNodes_1);
276
+ }
277
+ finally { if (e_1) throw e_1.error; }
278
+ }
279
+ }
280
+ if (outputGroupNodes) {
281
+ try {
282
+ for (var outputGroupNodes_1 = __values(outputGroupNodes), outputGroupNodes_1_1 = outputGroupNodes_1.next(); !outputGroupNodes_1_1.done; outputGroupNodes_1_1 = outputGroupNodes_1.next()) {
283
+ var _d = __read(outputGroupNodes_1_1.value, 2), key = _d[0], value = _d[1];
284
+ if (groupedNodes.has(key))
285
+ continue;
286
+ groupedNodes.set(key, value);
287
+ }
288
+ }
289
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
290
+ finally {
291
+ try {
292
+ if (outputGroupNodes_1_1 && !outputGroupNodes_1_1.done && (_b = outputGroupNodes_1.return)) _b.call(outputGroupNodes_1);
293
+ }
294
+ finally { if (e_2) throw e_2.error; }
295
+ }
296
+ }
297
+ var dstNodeIds = edgesConfig.map(function (edge) { return edge.target; });
298
+ var srcNodeIds = edgesConfig.map(function (edge) { return edge.source; });
299
+ // table
300
+ nodesConfig === null || nodesConfig === void 0 ? void 0 : nodesConfig.forEach(function (n) {
301
+ n.canExpandInput = false;
302
+ n.canExpandOutput = false;
303
+ n.canFoldInput = false;
304
+ n.canFoldOutput = false;
305
+ var currNodeLevel = groupedNodes.get(n.id);
306
+ if (_.isNil(currNodeLevel)) {
307
+ console.warn("get node level error '".concat(n.id, "'"));
308
+ return;
309
+ }
310
+ var isInputLeaf = false;
311
+ var isOutputLeaf = false;
312
+ if (currNodeLevel === 0) {
313
+ isInputLeaf = !dstNodeIds.includes(n.id);
314
+ isOutputLeaf = !srcNodeIds.includes(n.id);
315
+ }
316
+ else if (currNodeLevel < 0) {
317
+ isInputLeaf = !dstNodeIds.includes(n.id);
318
+ }
319
+ else {
320
+ isOutputLeaf = !srcNodeIds.includes(n.id);
321
+ }
322
+ // input node exist & left of start node
323
+ if (currNodeLevel <= 0 && !isInputLeaf) {
324
+ n.canFoldInput = true;
325
+ }
326
+ // input node not exist & left of start node
327
+ if (currNodeLevel <= 0 && isInputLeaf && n.hasMoreInput) {
328
+ n.canExpandInput = true;
329
+ }
330
+ // output node exist & right of start node
331
+ if (currNodeLevel >= 0 && !isOutputLeaf) {
332
+ n.canFoldOutput = true;
333
+ }
334
+ // output node not exist & right of start node
335
+ if (currNodeLevel >= 0 && isOutputLeaf && n.hasMoreOutput) {
336
+ n.canExpandOutput = true;
337
+ }
338
+ // column: always true if isStartNode === true
339
+ var columnRefreshList = n.isStartNode
340
+ ? __spreadArray(__spreadArray([], __read(n.children), false), __read(n.relatedColumns), false) : n.relatedColumns;
341
+ columnRefreshList === null || columnRefreshList === void 0 ? void 0 : columnRefreshList.forEach(function (col) {
342
+ col.canExpandInput = false;
343
+ col.canExpandOutput = false;
344
+ col.canFoldInput = false;
345
+ col.canFoldOutput = false;
346
+ if (!col.isStartNode && !col.isRelatedColumn)
347
+ return;
348
+ var isInputLeaf_col = false;
349
+ var isOutputLeaf_col = false;
350
+ if (currNodeLevel === 0) {
351
+ isInputLeaf_col = !dstNodeIds.includes(col.id);
352
+ isOutputLeaf_col = !srcNodeIds.includes(col.id);
353
+ }
354
+ else if (currNodeLevel < 0) {
355
+ isInputLeaf_col = !dstNodeIds.includes(col.id);
356
+ }
357
+ else {
358
+ isOutputLeaf_col = !srcNodeIds.includes(col.id);
359
+ }
360
+ // input node exist & left of start node
361
+ if (currNodeLevel <= 0 && !isInputLeaf_col) {
362
+ col.canFoldInput = true;
363
+ }
364
+ // input node not exist & left of start node
365
+ if (currNodeLevel <= 0 && isInputLeaf_col && col.hasMoreInput) {
366
+ col.canExpandInput = true;
367
+ }
368
+ // output node exist & right of start node
369
+ if (currNodeLevel >= 0 && !isOutputLeaf_col) {
370
+ col.canFoldOutput = true;
371
+ }
372
+ // output node not exist & right of start node
373
+ if (currNodeLevel >= 0 && isOutputLeaf_col && col.hasMoreOutput) {
374
+ col.canExpandOutput = true;
375
+ }
376
+ });
377
+ });
378
+ };
379
+ DataProcessor.prototype.getNodeType = function (typeCode) {
380
+ return typeCode === 'Table' ? TABLE_NODE : CUSTOM_NODE;
381
+ };
382
+ DataProcessor.prototype.updateNodesVisible = function (data, edgeDashVisible, onlyShowRelated, isFoldChecked) {
383
+ var _this = this;
384
+ if (_.isNil(data))
385
+ return;
386
+ data.nodes.forEach(function (node) {
387
+ var _a, _b;
388
+ node.visible = _this.getNodeVisible(node, data, edgeDashVisible, onlyShowRelated, isFoldChecked);
389
+ (_a = node.relatedColumns) === null || _a === void 0 ? void 0 : _a.forEach(function (col) {
390
+ col.visible = _this.getRelatedNodeVisible(col, data, edgeDashVisible);
391
+ });
392
+ (_b = node.children) === null || _b === void 0 ? void 0 : _b.forEach(function (child) {
393
+ child.visible = _this.getNodeVisible(child, data, edgeDashVisible, onlyShowRelated, isFoldChecked);
394
+ });
395
+ });
396
+ };
397
+ DataProcessor.prototype.updateEdgesVisible = function (data, edgeDashVisible, onlyShowRelated, isFoldChecked) {
398
+ var _this = this;
399
+ if (_.isNil(data))
400
+ return;
401
+ data.edges.forEach(function (edge) {
402
+ edge.visible = _this.getEdgeVisible(edge, edgeDashVisible, onlyShowRelated, isFoldChecked);
403
+ });
404
+ };
405
+ DataProcessor.prototype.getNodeVisible = function (nodeConfig, data, edgeDashVisible, onlyShowRelated, isFoldChecked) {
406
+ if (nodeConfig.isStartNode)
407
+ return true;
408
+ if (nodeConfig.isFolded)
409
+ return false;
410
+ // 只显示相关节点 & 该节点不是相关节点 & 该节点是表,则该节点不可见
411
+ if (onlyShowRelated && !nodeConfig.isRelated && !nodeConfig.tableId)
412
+ return false;
413
+ if (nodeConfig.canBeFold && isFoldChecked)
414
+ return false;
415
+ // 找出所有target、source为该节点的边
416
+ var relatedEdges = data.edges.filter(function (edge) {
417
+ var _a;
418
+ return (
419
+ // 上游表-当前表、当前表-下游表
420
+ edge.target === nodeConfig.id ||
421
+ edge.source === nodeConfig.id ||
422
+ (
423
+ // 上游列-当前列、当前列-下游列
424
+ (_a = nodeConfig === null || nodeConfig === void 0 ? void 0 : nodeConfig.relatedColumns) === null || _a === void 0 ? void 0 : _a.some(function (col) {
425
+ return edge.target === col.id || edge.source === col.id;
426
+ })));
427
+ });
428
+ if (!relatedEdges.length)
429
+ return false;
430
+ var allRelatedNodeInvisible = relatedEdges.every(function (edgeCfg) {
431
+ var srcNode = data.nodes.find(function (node) { return node.id === edgeCfg.source; });
432
+ var tgtNode = data.nodes.find(function (node) { return node.id === edgeCfg.target; });
433
+ if (((srcNode === null || srcNode === void 0 ? void 0 : srcNode.canBeFold) || (tgtNode === null || tgtNode === void 0 ? void 0 : tgtNode.canBeFold)) && isFoldChecked)
434
+ return true;
435
+ });
436
+ if (allRelatedNodeInvisible)
437
+ return false;
438
+ var isAllIndirectEdges = relatedEdges.every(function (edge) { return edge.relationType === EDashType.INDIRECT; });
439
+ // 开关只有true false,直接、间接
440
+ if (edgeDashVisible === EDashType.INDIRECT) {
441
+ return true;
442
+ }
443
+ else {
444
+ // 如果边都是间接边,那么该节点就隐藏
445
+ if (isAllIndirectEdges)
446
+ return false;
447
+ return true;
448
+ }
449
+ };
450
+ DataProcessor.prototype.getRelatedNodeVisible = function (nodeConfig, data, edgeDashVisible) {
451
+ var _a, _b, _c, _d, _e, _f;
452
+ // 仅相关开启的情况下,如果高亮链路是表链路,隐藏非相关的列
453
+ if ((_b = (_a = this.lineageManager) === null || _a === void 0 ? void 0 : _a.rightKeyMenuManager) === null || _b === void 0 ? void 0 : _b.onlyShowRelated) {
454
+ if (!((_e = (_d = (_c = this.lineageManager) === null || _c === void 0 ? void 0 : _c.activeNodes) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.tableName)) {
455
+ if (!_.some((_f = this.lineageManager) === null || _f === void 0 ? void 0 : _f.relatedNodes, { id: nodeConfig.id }))
456
+ return false;
457
+ }
458
+ }
459
+ // 找出所有target、source为该节点的边
460
+ var relatedEdges = data.edges.filter(function (edge) {
461
+ return (edge.target === nodeConfig.id || edge.source === nodeConfig.id) &&
462
+ edge.visible;
463
+ });
464
+ if (!relatedEdges.length)
465
+ return false;
466
+ var isAllIndirectEdges = relatedEdges.every(function (edge) { return edge.relationType === EDashType.INDIRECT; });
467
+ // 开关只有true false,直接、间接
468
+ if (edgeDashVisible === EDashType.INDIRECT) {
469
+ return true;
470
+ }
471
+ else {
472
+ // 如果边都是间接边,那么该节点就隐藏
473
+ if (isAllIndirectEdges)
474
+ return false;
475
+ return true;
476
+ }
477
+ };
478
+ DataProcessor.prototype.getEdgeVisible = function (edgeCfg, edgeDashVisible, onlyShowRelated, isFoldChecked) {
479
+ var _a, _b, _c;
480
+ // 如果边被折叠了,那么该边就隐藏
481
+ if (edgeCfg.isFolded)
482
+ return false;
483
+ var visible = false;
484
+ if (isFoldChecked) {
485
+ var foldStatus = (_c = (_b = (_a = this.lineageManager) === null || _a === void 0 ? void 0 : _a.foldLineageManager) === null || _b === void 0 ? void 0 : _b.foldStatusMap) === null || _c === void 0 ? void 0 : _c.get(edgeCfg.foldTableId);
486
+ if (foldStatus) {
487
+ visible = !!edgeCfg.isExtraFoldEdge;
488
+ }
489
+ }
490
+ switch (edgeDashVisible) {
491
+ case EDashType.DIRECT:
492
+ visible =
493
+ edgeCfg.relationType === EDashType.DIRECT ||
494
+ edgeCfg.relationType === EDashType.ALL;
495
+ break;
496
+ case EDashType.INDIRECT:
497
+ visible = true;
498
+ break;
499
+ }
500
+ return visible;
501
+ };
502
+ DataProcessor.prototype.updateNodesAndEdgesVisible = function (data, edgeDashVisible, onlyShowRelated, isFoldChecked) {
503
+ this.updateEdgesVisible(data, edgeDashVisible, onlyShowRelated, isFoldChecked);
504
+ // 更新节点本身、列、节点children的可见性
505
+ this.updateNodesVisible(data, edgeDashVisible, onlyShowRelated, isFoldChecked);
506
+ };
507
+ DataProcessor.prototype.refreshRelatedNodesAndEdges = function (relatedNodes, relatedEdges) {
508
+ var _this = this;
509
+ relatedNodes.forEach(function (n) {
510
+ if (!n)
511
+ return;
512
+ var nodeConfig = _this.lineageManager.getNodeConfigById(n.id);
513
+ if (!nodeConfig)
514
+ return;
515
+ nodeConfig.isRelated = true;
516
+ nodeConfig.style.stroke = '#3271C9';
517
+ if (!nodeConfig.isActive) {
518
+ nodeConfig.style.fill = '#E4EFFF';
519
+ }
520
+ nodeConfig.style.zIndex = 3;
521
+ });
522
+ relatedEdges.forEach(function (e) {
523
+ if (!e)
524
+ return;
525
+ var edge = _this.lineageManager.getEdgeConfigById(e.id);
526
+ if (!edge)
527
+ return;
528
+ if ((edge.inFoldLink &&
529
+ _this.lineageManager.foldLineageManager.isFoldChecked) ||
530
+ edge.isExtraFoldEdge)
531
+ return;
532
+ edge.style.stroke = '#3271C9';
533
+ });
534
+ };
535
+ DataProcessor.prototype.updateNodeHeight = function (data) {
536
+ var _this = this;
537
+ data.nodes.forEach(function (node) {
538
+ node.style.height = _this.calcNodeHeight(node);
539
+ });
540
+ };
541
+ DataProcessor.prototype.updateColumnPosition = function (data) {
542
+ data.nodes.forEach(function (node) {
543
+ var _a, _b;
544
+ var visibleRelatedColumns = (_a = node.relatedColumns) === null || _a === void 0 ? void 0 : _a.filter(function (col) { return col.visible; });
545
+ visibleRelatedColumns === null || visibleRelatedColumns === void 0 ? void 0 : visibleRelatedColumns.forEach(function (col, i) {
546
+ col.position.y = i * COL_HEIGHT;
547
+ });
548
+ var visibleColumns = (_b = node.children) === null || _b === void 0 ? void 0 : _b.filter(function (col) { return col.visible; });
549
+ visibleColumns === null || visibleColumns === void 0 ? void 0 : visibleColumns.forEach(function (col, i) {
550
+ col.position.y = node.position.y + COL_HEIGHT * i;
551
+ });
552
+ });
553
+ };
554
+ DataProcessor.prototype.calcNodeHeight = function (node) {
555
+ return getNodeHeight(node);
556
+ };
557
+ DataProcessor.startNodes = [];
558
+ return DataProcessor;
559
+ }(BaseManager));
560
+ export { DataProcessor };
561
+ //# sourceMappingURL=DataProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataProcessor.js","sourceRoot":"","sources":["../../src/manager/DataProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Graph, Image } from '@aloudata/ink-graph-new';
2
+ import { InkLineageManager } from './LineageManager';
3
+ import { BaseManager } from './BaseManager';
4
+ import { EDirection, INode, IColResBase, TDataBase } from '../types';
5
+ export declare class ExpandManager<TTableData extends TDataBase<TColumnData>, TColumnData extends IColResBase> extends BaseManager<TTableData, TColumnData> {
6
+ expandingButton: Image;
7
+ isExpanding: boolean;
8
+ prevStartRelatedColumnId: string;
9
+ constructor(lineageManager: InkLineageManager<TTableData, TColumnData>);
10
+ init(graph: Graph): void;
11
+ initExpandingButton(): void;
12
+ showExpandLoading(target: INode, direction: EDirection): void;
13
+ hideExpandLoading(): void;
14
+ }
15
+ //# sourceMappingURL=ExpandManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandManager.d.ts","sourceRoot":"","sources":["../../src/manager/ExpandManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,UAAU,EAGV,KAAK,EACL,WAAW,EACX,SAAS,EACV,MAAM,UAAU,CAAC;AAElB,qBAAa,aAAa,CACxB,UAAU,SAAS,SAAS,CAAC,WAAW,CAAC,EACzC,WAAW,SAAS,WAAW,CAC/B,SAAQ,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC;IAC5C,eAAe,EAAE,KAAK,CAAC;IAEvB,WAAW,EAAE,OAAO,CAAS;IAE7B,wBAAwB,EAAE,MAAM,CAAM;gBAC1B,cAAc,EAAE,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC;IAItE,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAKxB,mBAAmB;IAkBnB,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU;IAsCtD,iBAAiB;CAKlB"}