@aloudata/ink-lineage 0.0.1-beta.1 → 0.0.1-beta.11

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 (268) 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 +26 -0
  30. package/dist/components/Edges/DefaultEdge.d.ts.map +1 -0
  31. package/dist/components/Edges/DefaultEdge.js +145 -0
  32. package/dist/components/Edges/DefaultEdge.js.map +1 -0
  33. package/dist/components/Edges/FoldEdge.d.ts +9 -0
  34. package/dist/components/Edges/FoldEdge.d.ts.map +1 -0
  35. package/dist/components/Edges/FoldEdge.js +77 -0
  36. package/dist/components/Edges/FoldEdge.js.map +1 -0
  37. package/dist/components/Edges/LineageEdge.d.ts +7 -0
  38. package/dist/components/Edges/LineageEdge.d.ts.map +1 -0
  39. package/dist/components/Edges/LineageEdge.js +20 -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 +21 -0
  46. package/dist/components/Nodes/AssetNode.d.ts.map +1 -0
  47. package/dist/components/Nodes/AssetNode.js +278 -0
  48. package/dist/components/Nodes/AssetNode.js.map +1 -0
  49. package/dist/components/Nodes/ColumnNode.d.ts +27 -0
  50. package/dist/components/Nodes/ColumnNode.d.ts.map +1 -0
  51. package/dist/components/Nodes/ColumnNode.js +327 -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 +53 -0
  56. package/dist/components/Nodes/CustomNode.js.map +1 -0
  57. package/dist/components/Nodes/DefaultNode.d.ts +29 -0
  58. package/dist/components/Nodes/DefaultNode.d.ts.map +1 -0
  59. package/dist/components/Nodes/DefaultNode.js +162 -0
  60. package/dist/components/Nodes/DefaultNode.js.map +1 -0
  61. package/dist/components/Nodes/TableNode.d.ts +24 -0
  62. package/dist/components/Nodes/TableNode.d.ts.map +1 -0
  63. package/dist/components/Nodes/TableNode.js +384 -0
  64. package/dist/components/Nodes/TableNode.js.map +1 -0
  65. package/dist/components/Nodes/index.d.ts +4 -0
  66. package/dist/components/Nodes/index.d.ts.map +1 -0
  67. package/{src/components/Nodes/index.ts → dist/components/Nodes/index.js} +1 -1
  68. package/dist/components/Nodes/index.js.map +1 -0
  69. package/dist/components/Nodes/task/Column.d.ts +30 -0
  70. package/dist/components/Nodes/task/Column.d.ts.map +1 -0
  71. package/dist/components/Nodes/task/Column.js +222 -0
  72. package/dist/components/Nodes/task/Column.js.map +1 -0
  73. package/dist/components/Nodes/task/CustomNode.d.ts +38 -0
  74. package/dist/components/Nodes/task/CustomNode.d.ts.map +1 -0
  75. package/dist/components/Nodes/task/CustomNode.js +272 -0
  76. package/dist/components/Nodes/task/CustomNode.js.map +1 -0
  77. package/dist/components/Nodes/task/TableNode copy.d.ts +51 -0
  78. package/dist/components/Nodes/task/TableNode copy.d.ts.map +1 -0
  79. package/dist/components/Nodes/task/TableNode copy.js +642 -0
  80. package/dist/components/Nodes/task/TableNode copy.js.map +1 -0
  81. package/dist/components/Nodes/task/TableNode.d.ts +51 -0
  82. package/dist/components/Nodes/task/TableNode.d.ts.map +1 -0
  83. package/dist/components/Nodes/task/TableNode.js +642 -0
  84. package/dist/components/Nodes/task/TableNode.js.map +1 -0
  85. package/dist/components/index.d.ts +3 -0
  86. package/dist/components/index.d.ts.map +1 -0
  87. package/dist/components/index.js +3 -0
  88. package/dist/components/index.js.map +1 -0
  89. package/dist/constant/index.d.ts +2 -0
  90. package/dist/constant/index.d.ts.map +1 -0
  91. package/dist/constant/index.js +2 -0
  92. package/dist/constant/index.js.map +1 -0
  93. package/dist/constant/nodeStyle.d.ts +75 -0
  94. package/dist/constant/nodeStyle.d.ts.map +1 -0
  95. package/dist/constant/nodeStyle.js +111 -0
  96. package/dist/constant/nodeStyle.js.map +1 -0
  97. package/dist/index.d.ts +6 -0
  98. package/dist/index.d.ts.map +1 -0
  99. package/{src/index.ts → dist/index.js} +1 -1
  100. package/dist/index.js.map +1 -0
  101. package/dist/manager/BaseLineageManager.d.ts +51 -0
  102. package/dist/manager/BaseLineageManager.d.ts.map +1 -0
  103. package/dist/manager/BaseLineageManager.js +102 -0
  104. package/dist/manager/BaseLineageManager.js.map +1 -0
  105. package/dist/manager/BaseManager.d.ts +7 -0
  106. package/dist/manager/BaseManager.d.ts.map +1 -0
  107. package/dist/manager/BaseManager.js +8 -0
  108. package/dist/manager/BaseManager.js.map +1 -0
  109. package/dist/manager/DataProcessor.d.ts +27 -0
  110. package/dist/manager/DataProcessor.d.ts.map +1 -0
  111. package/dist/manager/DataProcessor.js +587 -0
  112. package/dist/manager/DataProcessor.js.map +1 -0
  113. package/dist/manager/ExpandManager.d.ts +13 -0
  114. package/dist/manager/ExpandManager.d.ts.map +1 -0
  115. package/dist/manager/ExpandManager.js +74 -0
  116. package/dist/manager/ExpandManager.js.map +1 -0
  117. package/dist/manager/FoldLineageManager.d.ts +17 -0
  118. package/dist/manager/FoldLineageManager.d.ts.map +1 -0
  119. package/dist/manager/FoldLineageManager.js +176 -0
  120. package/dist/manager/FoldLineageManager.js.map +1 -0
  121. package/dist/manager/GraphEventManager.d.ts +9 -0
  122. package/dist/manager/GraphEventManager.d.ts.map +1 -0
  123. package/dist/manager/GraphEventManager.js +72 -0
  124. package/dist/manager/GraphEventManager.js.map +1 -0
  125. package/dist/manager/LineageManager.d.ts +116 -0
  126. package/dist/manager/LineageManager.d.ts.map +1 -0
  127. package/dist/manager/LineageManager.js +495 -0
  128. package/dist/manager/LineageManager.js.map +1 -0
  129. package/dist/manager/RightKeyMenuManager.d.ts +21 -0
  130. package/dist/manager/RightKeyMenuManager.d.ts.map +1 -0
  131. package/dist/manager/RightKeyMenuManager.js +67 -0
  132. package/dist/manager/RightKeyMenuManager.js.map +1 -0
  133. package/dist/manager/SearchNodeManager.d.ts +12 -0
  134. package/dist/manager/SearchNodeManager.d.ts.map +1 -0
  135. package/dist/manager/SearchNodeManager.js +101 -0
  136. package/dist/manager/SearchNodeManager.js.map +1 -0
  137. package/dist/manager/ToolbarManager.d.ts +8 -0
  138. package/dist/manager/ToolbarManager.d.ts.map +1 -0
  139. package/dist/manager/ToolbarManager.js +23 -0
  140. package/dist/manager/ToolbarManager.js.map +1 -0
  141. package/dist/manager/index.d.ts +9 -0
  142. package/dist/manager/index.d.ts.map +1 -0
  143. package/{src/manager/index.ts → dist/manager/index.js} +1 -0
  144. package/dist/manager/index.js.map +1 -0
  145. package/dist/manager/nodeManager/AssetEventManager.d.ts +10 -0
  146. package/dist/manager/nodeManager/AssetEventManager.d.ts.map +1 -0
  147. package/dist/manager/nodeManager/AssetEventManager.js +287 -0
  148. package/dist/manager/nodeManager/AssetEventManager.js.map +1 -0
  149. package/dist/manager/nodeManager/BaseEventManager.d.ts +18 -0
  150. package/dist/manager/nodeManager/BaseEventManager.d.ts.map +1 -0
  151. package/dist/manager/nodeManager/BaseEventManager.js +89 -0
  152. package/dist/manager/nodeManager/BaseEventManager.js.map +1 -0
  153. package/dist/manager/nodeManager/ColumnEventManager.d.ts +12 -0
  154. package/dist/manager/nodeManager/ColumnEventManager.d.ts.map +1 -0
  155. package/dist/manager/nodeManager/ColumnEventManager.js +336 -0
  156. package/dist/manager/nodeManager/ColumnEventManager.js.map +1 -0
  157. package/dist/manager/nodeManager/CustomEventManager.d.ts +6 -0
  158. package/dist/manager/nodeManager/CustomEventManager.d.ts.map +1 -0
  159. package/dist/manager/nodeManager/CustomEventManager.js +19 -0
  160. package/dist/manager/nodeManager/CustomEventManager.js.map +1 -0
  161. package/dist/manager/nodeManager/TableEventManager.d.ts +11 -0
  162. package/dist/manager/nodeManager/TableEventManager.d.ts.map +1 -0
  163. package/dist/manager/nodeManager/TableEventManager.js +121 -0
  164. package/dist/manager/nodeManager/TableEventManager.js.map +1 -0
  165. package/dist/manager/nodeManager/index.d.ts +4 -0
  166. package/dist/manager/nodeManager/index.d.ts.map +1 -0
  167. package/{src/manager/nodeManager/index.ts → dist/manager/nodeManager/index.js} +2 -1
  168. package/dist/manager/nodeManager/index.js.map +1 -0
  169. package/dist/manager/task/DataProcessor.d.ts +22 -0
  170. package/dist/manager/task/DataProcessor.d.ts.map +1 -0
  171. package/dist/manager/task/DataProcessor.js +379 -0
  172. package/dist/manager/task/DataProcessor.js.map +1 -0
  173. package/dist/manager/task/GraphEventManager.d.ts +13 -0
  174. package/dist/manager/task/GraphEventManager.d.ts.map +1 -0
  175. package/dist/manager/task/GraphEventManager.js +77 -0
  176. package/dist/manager/task/GraphEventManager.js.map +1 -0
  177. package/dist/manager/task/LineageManager.d.ts +70 -0
  178. package/dist/manager/task/LineageManager.d.ts.map +1 -0
  179. package/dist/manager/task/LineageManager.js +399 -0
  180. package/dist/manager/task/LineageManager.js.map +1 -0
  181. package/dist/manager/task/RightKeyMenuManager.d.ts +44 -0
  182. package/dist/manager/task/RightKeyMenuManager.d.ts.map +1 -0
  183. package/dist/manager/task/RightKeyMenuManager.js +183 -0
  184. package/dist/manager/task/RightKeyMenuManager.js.map +1 -0
  185. package/dist/manager/task/SearchNodeManager.d.ts +12 -0
  186. package/dist/manager/task/SearchNodeManager.d.ts.map +1 -0
  187. package/dist/manager/task/SearchNodeManager.js +100 -0
  188. package/dist/manager/task/SearchNodeManager.js.map +1 -0
  189. package/dist/types/eventEnum.d.ts +45 -0
  190. package/dist/types/eventEnum.d.ts.map +1 -0
  191. package/dist/types/eventEnum.js +48 -0
  192. package/dist/types/eventEnum.js.map +1 -0
  193. package/dist/types/index.d.ts +4 -0
  194. package/dist/types/index.d.ts.map +1 -0
  195. package/dist/types/index.js +4 -0
  196. package/dist/types/index.js.map +1 -0
  197. package/dist/types/manager.d.ts +85 -0
  198. package/dist/types/manager.d.ts.map +1 -0
  199. package/dist/types/manager.js +34 -0
  200. package/dist/types/manager.js.map +1 -0
  201. package/dist/types/node.d.ts +208 -0
  202. package/dist/types/node.d.ts.map +1 -0
  203. package/dist/types/node.js +120 -0
  204. package/dist/types/node.js.map +1 -0
  205. package/dist/utils/foldNode.d.ts +14 -0
  206. package/dist/utils/foldNode.d.ts.map +1 -0
  207. package/dist/utils/foldNode.js +231 -0
  208. package/dist/utils/foldNode.js.map +1 -0
  209. package/dist/utils/getIconByType.d.ts +4 -0
  210. package/dist/utils/getIconByType.d.ts.map +1 -0
  211. package/dist/utils/getIconByType.js +72 -0
  212. package/dist/utils/getIconByType.js.map +1 -0
  213. package/dist/utils/index.d.ts +4 -0
  214. package/dist/utils/index.d.ts.map +1 -0
  215. package/{src/utils/index.ts → dist/utils/index.js} +1 -0
  216. package/dist/utils/index.js.map +1 -0
  217. package/dist/utils/manager.d.ts +5 -0
  218. package/dist/utils/manager.d.ts.map +1 -0
  219. package/dist/utils/manager.js +44 -0
  220. package/dist/utils/manager.js.map +1 -0
  221. package/dist/utils/node.d.ts +29 -0
  222. package/dist/utils/node.d.ts.map +1 -0
  223. package/dist/utils/node.js +286 -0
  224. package/dist/utils/node.js.map +1 -0
  225. package/package.json +9 -7
  226. package/src/assets/big/dataSourceTypeIcon.ts +0 -65
  227. package/src/assets/big/entityType.ts +0 -1
  228. package/src/assets/big/lineageIcon.ts +0 -35
  229. package/src/assets/big/tableTypeIcon.ts +0 -17
  230. package/src/assets/big/tipIcon.ts +0 -1
  231. package/src/assets/index.ts +0 -14
  232. package/src/components/Edges/DefaultEdge.ts +0 -196
  233. package/src/components/Edges/FoldEdge.ts +0 -97
  234. package/src/components/Edges/LineageEdge.ts +0 -24
  235. package/src/components/Edges/index.ts +0 -3
  236. package/src/components/Nodes/AssetNode.ts +0 -438
  237. package/src/components/Nodes/ColumnNode.ts +0 -491
  238. package/src/components/Nodes/CustomNode.ts +0 -63
  239. package/src/components/Nodes/DefaultNode.ts +0 -74
  240. package/src/components/Nodes/DowngradeNode.ts +0 -115
  241. package/src/components/Nodes/TableNode.ts +0 -534
  242. package/src/components/index.ts +0 -2
  243. package/src/constant/index.ts +0 -1
  244. package/src/constant/nodeStyle.ts +0 -141
  245. package/src/manager/BaseManager.ts +0 -20
  246. package/src/manager/DataProcessor.ts +0 -782
  247. package/src/manager/ExpandManager.ts +0 -93
  248. package/src/manager/FoldLineageManager.ts +0 -196
  249. package/src/manager/GraphEventManager.ts +0 -90
  250. package/src/manager/LineageManager.ts +0 -680
  251. package/src/manager/RightKeyMenuManager.ts +0 -114
  252. package/src/manager/SearchNodeManager.ts +0 -188
  253. package/src/manager/ToolbarManager.ts +0 -42
  254. package/src/manager/nodeManager/AssetEventManager.ts +0 -442
  255. package/src/manager/nodeManager/BaseEventManager.ts +0 -68
  256. package/src/manager/nodeManager/ColumnEventManager.ts +0 -467
  257. package/src/manager/nodeManager/CustomEventManager.ts +0 -11
  258. package/src/manager/nodeManager/TableEventManager.ts +0 -87
  259. package/src/types/NodeConfig.ts +0 -69
  260. package/src/types/eventEnum.ts +0 -58
  261. package/src/types/index.ts +0 -3
  262. package/src/types/manager.ts +0 -75
  263. package/src/types/node.ts +0 -246
  264. package/src/utils/downgradeNode.ts +0 -22
  265. package/src/utils/foldNode.ts +0 -345
  266. package/src/utils/getIconByType.ts +0 -104
  267. package/src/utils/node.ts +0 -294
  268. package/tsconfig.json +0 -30
@@ -0,0 +1,495 @@
1
+ import { __assign, __read, __spreadArray } from "tslib";
2
+ import { BigLayout, Graph, isNodeVisible, } from '@aloudata/ink-graph-new';
3
+ import { DataProcessor, ExpandManager } from './index';
4
+ import { EDirection, } from '../types';
5
+ import { getRelatedData } from '../utils';
6
+ import { SearchNodeManager, RightKeyMenuManager, FoldLineageManager } from '.';
7
+ import _ from 'lodash';
8
+ import { ToolbarManager } from './ToolbarManager';
9
+ import EventEmitter from 'eventemitter3';
10
+ import { CustomNode, TableNode, DefaultEdge } from '../components';
11
+ import { DefaultNode } from '../components/Nodes/DefaultNode';
12
+ import { CustomEventManager, TableEventManager, ColumnEventManager, } from './nodeManager';
13
+ import { CUSTOM_NODE, BASE_NODE, FOLD_EDGE, LINEAGE_EDGE, TABLE_NODE, } from '../constant';
14
+ import { FoldEdge } from '../components/Edges/FoldEdge';
15
+ import { LineageEdge } from '../components/Edges/LineageEdge';
16
+ import { GraphEventManager } from './GraphEventManager';
17
+ import { AssetNode } from '../components/Nodes/AssetNode';
18
+ import { hideEdgeTypes, onZoomChange } from '../utils/manager';
19
+ var InkLineageManager = /** @class */ (function () {
20
+ function InkLineageManager(data, config) {
21
+ this.emitter = new EventEmitter();
22
+ this.activeNodes = [];
23
+ this.relatedNodes = [];
24
+ this.relatedEdges = [];
25
+ this.cachedRelatedNodeConfig = null;
26
+ this.nodesMap = new Map();
27
+ this.childrenColumnsMap = new Map();
28
+ this.relatedColumnsMap = new Map();
29
+ this.edgesMap = new Map();
30
+ this.layoutControl = {
31
+ shouldGroupNodes: true,
32
+ shouldLayout: true,
33
+ };
34
+ this.config = config;
35
+ this.canvasDomRoot = _.isString(config.root)
36
+ ? document.getElementById(config.root)
37
+ : config.root;
38
+ this.setData(data);
39
+ // 初始化managers
40
+ this.initManagers();
41
+ this.initGraph();
42
+ if (this.graph) {
43
+ this.graphEventManager.init();
44
+ this.expandManager.init();
45
+ }
46
+ }
47
+ Object.defineProperty(InkLineageManager.prototype, "isExpanding", {
48
+ get: function () {
49
+ var _a;
50
+ return (_a = this.expandManager) === null || _a === void 0 ? void 0 : _a.isExpanding;
51
+ },
52
+ enumerable: false,
53
+ configurable: true
54
+ });
55
+ InkLineageManager.prototype.initGraph = function () {
56
+ var _this = this;
57
+ // init graph by parsed data
58
+ var _a = this.config, root = _a.root, cullingConfig = _a.cullingConfig, layoutConfig = _a.layoutConfig, zoomConfig = _a.zoomConfig;
59
+ var graph = new Graph({
60
+ root: root,
61
+ culling: cullingConfig,
62
+ layout: layoutConfig,
63
+ tools: {
64
+ zoom: __assign(__assign({}, zoomConfig), { onZoomChange: function (mode) {
65
+ onZoomChange(mode, _this);
66
+ } }),
67
+ },
68
+ canvasCallback: {
69
+ onDrop: function () {
70
+ _this.update({ shouldGroupNodes: false });
71
+ },
72
+ onWheel: function () {
73
+ _this.update({ shouldGroupNodes: false });
74
+ },
75
+ },
76
+ });
77
+ this.graph = graph;
78
+ // register custom node
79
+ graph.registerNode(BASE_NODE, AssetNode);
80
+ graph.registerNode(TABLE_NODE, TableNode);
81
+ graph.registerNode(CUSTOM_NODE, CustomNode);
82
+ graph.registerEdge(FOLD_EDGE, FoldEdge);
83
+ graph.registerEdge(LINEAGE_EDGE, LineageEdge);
84
+ DefaultNode.lineageManager = this;
85
+ DefaultEdge.lineageManager = this;
86
+ this.render();
87
+ };
88
+ InkLineageManager.prototype.initManagers = function () {
89
+ this.tableEventManager = new TableEventManager(this);
90
+ this.customEventManager = new CustomEventManager(this);
91
+ this.columnEventManager = new ColumnEventManager(this);
92
+ this.graphEventManager = new GraphEventManager(this);
93
+ this.dataProcessor = new DataProcessor(this);
94
+ this.foldLineageManager = new FoldLineageManager(this);
95
+ this.searchNodeManager = new SearchNodeManager(this);
96
+ this.rightKeyMenuManager = new RightKeyMenuManager(this);
97
+ this.toolbarManager = new ToolbarManager(this);
98
+ this.expandManager = new ExpandManager(this);
99
+ };
100
+ InkLineageManager.prototype.on = function (type, listener) {
101
+ this.emitter.on(type, listener);
102
+ };
103
+ InkLineageManager.prototype.once = function (type, listener) {
104
+ this.emitter.once(type, listener);
105
+ };
106
+ InkLineageManager.prototype.emit = function (event, data) {
107
+ this.emitter.emit(event, data);
108
+ };
109
+ InkLineageManager.prototype.off = function (type, listener) {
110
+ this.emitter.off(type, listener);
111
+ };
112
+ InkLineageManager.prototype.layout = function (nodes, edges) {
113
+ var _a, _b;
114
+ if (nodes === void 0) { nodes = this.parsedData.nodes; }
115
+ if (edges === void 0) { edges = this.parsedData.edges; }
116
+ var layoutedData = BigLayout(nodes, edges, this.canvasDomRoot, {
117
+ shouldGroupNodes: this.layoutControl.shouldGroupNodes,
118
+ sortConfig: (_b = (_a = this.config.layoutConfig) === null || _a === void 0 ? void 0 : _a.sortRules) !== null && _b !== void 0 ? _b : [],
119
+ mode: this.graph.mode,
120
+ });
121
+ return layoutedData || { nodes: [], edges: [] };
122
+ };
123
+ InkLineageManager.prototype.render = function (isUpdate) {
124
+ var _a, _b;
125
+ if (isUpdate === void 0) { isUpdate = false; }
126
+ if (!this.parsedData)
127
+ return;
128
+ this.refreshExtraStatus();
129
+ if (this.layoutControl.shouldLayout) {
130
+ var _c = this.parsedData, nodes = _c.nodes, edges = _c.edges;
131
+ var visibleNodes = nodes.filter(function (node) { return node.visible; });
132
+ var visibleEdges = edges.filter(function (edge) { return edge.visible; });
133
+ var layoutedData = this.layout(visibleNodes, visibleEdges);
134
+ var data = this.handleCulling(layoutedData);
135
+ this.graph.setData(data);
136
+ }
137
+ if (isUpdate) {
138
+ (_a = this.graph) === null || _a === void 0 ? void 0 : _a.update();
139
+ }
140
+ else {
141
+ (_b = this.graph) === null || _b === void 0 ? void 0 : _b.render();
142
+ }
143
+ this.resetLayoutControl();
144
+ };
145
+ InkLineageManager.prototype.update = function (layoutControl) {
146
+ if (layoutControl) {
147
+ this.layoutControl = __assign(__assign({}, this.layoutControl), layoutControl);
148
+ }
149
+ this.render(true);
150
+ };
151
+ InkLineageManager.prototype.resetLayoutControl = function () {
152
+ this.layoutControl = {
153
+ shouldGroupNodes: true,
154
+ shouldLayout: true,
155
+ };
156
+ };
157
+ InkLineageManager.prototype.destroy = function () {
158
+ var _a;
159
+ (_a = this.graph) === null || _a === void 0 ? void 0 : _a.destroy();
160
+ this.graph = null;
161
+ };
162
+ InkLineageManager.prototype.setData = function (data) {
163
+ if (this.getMode() === 'SIMPLE') {
164
+ data.edges.forEach(function (edge) {
165
+ if (hideEdgeTypes.includes(edge.data.relationTypeCode)) {
166
+ edge.visible = false;
167
+ edge.canBeFold = true;
168
+ edge.isFolded = true;
169
+ }
170
+ });
171
+ }
172
+ this.parsedData = data;
173
+ this.updateDataMaps(this.parsedData);
174
+ };
175
+ InkLineageManager.prototype.updateData = function (data) {
176
+ this.setData(data);
177
+ this.update();
178
+ };
179
+ // 裁剪逻辑
180
+ InkLineageManager.prototype.handleCulling = function (data) {
181
+ var _this = this;
182
+ var _a;
183
+ var _b = this.config.cullingConfig, auto = _b.auto, max = _b.max;
184
+ var culling = auto && this.parsedData.nodes.length > max;
185
+ var nodesConfig = data.nodes;
186
+ var edgesConfig = data.edges;
187
+ if (culling) {
188
+ var orthoMatrix_1 = this.getCanvas().getCamera().getOrthoMatrix();
189
+ // set nodes & edges
190
+ var nodesConfigMap_1 = new Map();
191
+ nodesConfig = (_a = data === null || data === void 0 ? void 0 : data.nodes) === null || _a === void 0 ? void 0 : _a.filter(function (node) {
192
+ var isVisible = isNodeVisible(node, _this.canvasDomRoot.clientWidth, _this.canvasDomRoot.clientHeight, orthoMatrix_1);
193
+ if (isVisible) {
194
+ nodesConfigMap_1.set(node.id, node);
195
+ }
196
+ return isVisible;
197
+ });
198
+ }
199
+ return {
200
+ nodes: nodesConfig,
201
+ edges: edgesConfig,
202
+ };
203
+ };
204
+ InkLineageManager.prototype.refreshExtraStatus = function () {
205
+ var _a, _b, _c, _d, _e, _f, _g, _h;
206
+ (_a = this.dataProcessor) === null || _a === void 0 ? void 0 : _a.updateNodesAndEdgesVisible(this.parsedData, (_b = this.rightKeyMenuManager) === null || _b === void 0 ? void 0 : _b.edgeDashVisible, (_c = this.rightKeyMenuManager) === null || _c === void 0 ? void 0 : _c.onlyShowRelated, (_d = this.foldLineageManager) === null || _d === void 0 ? void 0 : _d.isFoldChecked);
207
+ // 刷新相关节点和边的高亮样式(如果打开了间接血缘按钮,那这些间接血缘也需要高亮)
208
+ (_e = this.dataProcessor) === null || _e === void 0 ? void 0 : _e.refreshRelatedNodesAndEdges(this.relatedNodes, this.relatedEdges);
209
+ (_f = this.dataProcessor) === null || _f === void 0 ? void 0 : _f.updateSideIconVisible(this.parsedData);
210
+ (_g = this.dataProcessor) === null || _g === void 0 ? void 0 : _g.updateNodeHeight(this.parsedData);
211
+ (_h = this.dataProcessor) === null || _h === void 0 ? void 0 : _h.updateColumnPosition(this.parsedData);
212
+ };
213
+ InkLineageManager.prototype.updateActiveNodes = function (nodes) {
214
+ var _a, _b;
215
+ // reset prev active nodes
216
+ (_a = this.activeNodes) === null || _a === void 0 ? void 0 : _a.forEach(function (n) {
217
+ if (!n)
218
+ return;
219
+ n.isActive = false;
220
+ n.style.stroke = '#B1B1B1';
221
+ n.style.fill = '#fff';
222
+ n.style.zIndex = 2;
223
+ });
224
+ // update new active nodes
225
+ this.activeNodes = nodes;
226
+ (_b = this.activeNodes) === null || _b === void 0 ? void 0 : _b.forEach(function (n) {
227
+ if (!n)
228
+ return;
229
+ n.isActive = true;
230
+ n.style.stroke = '#3271C9';
231
+ n.style.fill = '#A9CFFB';
232
+ n.style.zIndex = 3;
233
+ });
234
+ };
235
+ InkLineageManager.prototype.resetActiveNodes = function () {
236
+ this.updateActiveNodes([]);
237
+ };
238
+ InkLineageManager.prototype.updateRelatedNodes = function (nodes, edges, needUpdate) {
239
+ var _this = this;
240
+ var _a, _b, _c;
241
+ if (needUpdate === void 0) { needUpdate = true; }
242
+ // reset prev related nodes
243
+ (_a = this.relatedNodes) === null || _a === void 0 ? void 0 : _a.forEach(function (n) {
244
+ if (!n)
245
+ return;
246
+ n.isRelated = false;
247
+ n.style.stroke = '#B1B1B1';
248
+ if (!n.isActive)
249
+ n.style.fill = '#fff';
250
+ n.style.zIndex = 1;
251
+ if (n === null || n === void 0 ? void 0 : n.tableId) {
252
+ var tableNode = _this.getNodeConfigById(n.tableId);
253
+ if (tableNode) {
254
+ tableNode.isRelated = false;
255
+ }
256
+ }
257
+ });
258
+ // reset prev related edges
259
+ (_b = this.relatedEdges) === null || _b === void 0 ? void 0 : _b.forEach(function (edge) {
260
+ var isFold = edge.inFoldLink && _this.foldLineageManager.isFoldChecked;
261
+ if (isFold || edge.isExtraFoldEdge)
262
+ return;
263
+ edge.style.stroke = '#B1B1B1';
264
+ edge.style.lineWidth = 1;
265
+ edge.style.zIndex = -1;
266
+ });
267
+ // update new related nodes
268
+ this.relatedNodes = nodes;
269
+ (_c = this.relatedNodes) === null || _c === void 0 ? void 0 : _c.forEach(function (n) {
270
+ if (!n)
271
+ return;
272
+ n.isRelated = true;
273
+ n.style.stroke = '#3271C9';
274
+ if (!n.isActive)
275
+ n.style.fill = '#E4EFFF';
276
+ n.style.zIndex = 3;
277
+ if (n === null || n === void 0 ? void 0 : n.tableId) {
278
+ var tableNode = _this.getNodeConfigById(n.tableId);
279
+ if (tableNode) {
280
+ tableNode.isRelated = true;
281
+ }
282
+ }
283
+ });
284
+ // update new related edges
285
+ this.relatedEdges = edges;
286
+ this.relatedEdges.forEach(function (edge) {
287
+ var isFold = edge.inFoldLink && _this.foldLineageManager.isFoldChecked;
288
+ if (isFold || edge.isExtraFoldEdge)
289
+ return;
290
+ edge.style.stroke = '#3271C9';
291
+ edge.style.lineWidth = 1.5;
292
+ edge.style.zIndex = 1;
293
+ });
294
+ if (needUpdate) {
295
+ this.update({ shouldLayout: false });
296
+ }
297
+ };
298
+ InkLineageManager.prototype.resetRelatedNodes = function (needUpdate) {
299
+ if (needUpdate === void 0) { needUpdate = true; }
300
+ this.updateRelatedNodes([], [], needUpdate);
301
+ };
302
+ InkLineageManager.prototype.resetHighLight = function () {
303
+ var prevHighlightNodeConfig = this.getNodeConfigById(this.searchNodeManager.highlightNodeId);
304
+ if (prevHighlightNodeConfig) {
305
+ // reset highlight
306
+ prevHighlightNodeConfig.style.stroke = '#E8E8E8';
307
+ prevHighlightNodeConfig.style.fill = '#FFF';
308
+ }
309
+ this.update({ shouldLayout: false });
310
+ };
311
+ InkLineageManager.prototype.getNodeConfigById = function (id) {
312
+ var tableNodeConfig = this.getTableNodeConfigById(id);
313
+ var relatedColumnConfig = this.getRelatedColumnConfigById(id);
314
+ var childrenColumnConfig = this.getChildrenColumnConfigById(id);
315
+ return (tableNodeConfig ||
316
+ ((relatedColumnConfig === null || relatedColumnConfig === void 0 ? void 0 : relatedColumnConfig.visible)
317
+ ? relatedColumnConfig
318
+ : childrenColumnConfig));
319
+ };
320
+ InkLineageManager.prototype.getTableNodeConfigById = function (id) {
321
+ return this.nodesMap.get(id);
322
+ };
323
+ InkLineageManager.prototype.getRelatedColumnConfigById = function (id) {
324
+ return this.relatedColumnsMap.get(id);
325
+ };
326
+ InkLineageManager.prototype.getChildrenColumnConfigById = function (id) {
327
+ return this.childrenColumnsMap.get(id);
328
+ };
329
+ InkLineageManager.prototype.setRelatedNodesAndEdges = function (nodeConfig, needUpdate) {
330
+ if (needUpdate === void 0) { needUpdate = true; }
331
+ this.cachedRelatedNodeConfig = nodeConfig;
332
+ if (!nodeConfig)
333
+ return;
334
+ // update related ui
335
+ var relatedInputs = getRelatedData(nodeConfig, this.parsedData.nodes, this.parsedData.edges, EDirection.INPUT);
336
+ var relatedOutputs = getRelatedData(nodeConfig, this.parsedData.nodes, this.parsedData.edges, EDirection.OUTPUT);
337
+ var relatedNodes = _.uniqBy(__spreadArray(__spreadArray([], __read(relatedInputs.relatedNodes), false), __read(relatedOutputs.relatedNodes), false), 'id');
338
+ var relatedEdges = _.uniqBy(__spreadArray(__spreadArray([], __read(relatedInputs.relatedEdges), false), __read(relatedOutputs.relatedEdges), false), 'id');
339
+ this.updateRelatedNodes(relatedNodes, relatedEdges, needUpdate);
340
+ };
341
+ InkLineageManager.prototype.getEdgeConfigById = function (id) {
342
+ return this.edgesMap.get(id);
343
+ };
344
+ InkLineageManager.prototype.resetToolConfig = function () {
345
+ this.foldLineageManager.resetFoldCheck();
346
+ this.rightKeyMenuManager.resetEdgeDashVisible();
347
+ this.rightKeyMenuManager.resetOnlyShowRelated();
348
+ };
349
+ InkLineageManager.prototype.setChildrenColumnsMap = function (id, column) {
350
+ this.childrenColumnsMap.set(id, column);
351
+ };
352
+ // Add method to update the maps
353
+ InkLineageManager.prototype.updateDataMaps = function (data) {
354
+ var _this = this;
355
+ // Clear existing maps
356
+ this.nodesMap.clear();
357
+ this.edgesMap.clear();
358
+ // Populate node map
359
+ data.nodes.forEach(function (node) {
360
+ var _a, _b;
361
+ _this.nodesMap.set(node.id, node);
362
+ // Add children to the map as well
363
+ (_a = node.children) === null || _a === void 0 ? void 0 : _a.forEach(function (child) {
364
+ _this.childrenColumnsMap.set(child.id, child);
365
+ });
366
+ // Add related columns to the map
367
+ (_b = node.relatedColumns) === null || _b === void 0 ? void 0 : _b.forEach(function (col) {
368
+ _this.relatedColumnsMap.set(col.id, col);
369
+ });
370
+ });
371
+ // Populate edge map
372
+ data.edges.forEach(function (edge) {
373
+ _this.edgesMap.set(edge.id, edge);
374
+ });
375
+ };
376
+ InkLineageManager.prototype.clearAllTableRelatedColumns = function (nodeConfig) {
377
+ if (!nodeConfig)
378
+ return;
379
+ if (nodeConfig.isStartNode) {
380
+ this.parsedData.nodes.forEach(function (node) {
381
+ node.relatedColumns = [];
382
+ });
383
+ }
384
+ };
385
+ /**************************************** 扩展 *******************************/
386
+ InkLineageManager.prototype.showExpandLoading = function (target, direction) {
387
+ this.expandManager.showExpandLoading(target, direction);
388
+ };
389
+ InkLineageManager.prototype.hideExpandLoading = function () {
390
+ this.expandManager.hideExpandLoading();
391
+ };
392
+ /**************************************** 全局搜索 *******************************/
393
+ InkLineageManager.prototype.searchNode = function (input) {
394
+ this.searchNodeManager.searchNode(input);
395
+ };
396
+ /**************************************** 工具栏 *******************************/
397
+ InkLineageManager.prototype.refreshToolbarRelatedStatus = function (nodeConfig) {
398
+ this.toolbarManager.updateOnlyRelatedVisible(nodeConfig);
399
+ };
400
+ /**************************************** 右键菜单 *******************************/
401
+ // update overview info
402
+ InkLineageManager.prototype.setOverview = function (data) {
403
+ this.rightKeyMenuManager.setOverview(data);
404
+ };
405
+ // show context menu
406
+ InkLineageManager.prototype.showContextMenu = function (data) {
407
+ this.rightKeyMenuManager.showContextMenu(data);
408
+ };
409
+ // hide context menu
410
+ InkLineageManager.prototype.hideContextMenu = function () {
411
+ this.rightKeyMenuManager.hideContextMenu();
412
+ };
413
+ // show hotspot modal
414
+ InkLineageManager.prototype.updateHotspotModalState = function (data) {
415
+ this.rightKeyMenuManager.updateHotspotModalState(data);
416
+ };
417
+ // update direct & indirect table visible
418
+ InkLineageManager.prototype.updateEdgeDashVisible = function (edgeDashVisible) {
419
+ this.rightKeyMenuManager.updateEdgeDashVisible(edgeDashVisible);
420
+ };
421
+ InkLineageManager.prototype.getHotspotModalState = function () {
422
+ return this.rightKeyMenuManager.hotspotModalState;
423
+ };
424
+ InkLineageManager.prototype.getContextMenuState = function () {
425
+ return this.rightKeyMenuManager.contextMenuState;
426
+ };
427
+ InkLineageManager.prototype.getHotspotTipState = function () {
428
+ return this.rightKeyMenuManager.hotspotTipState;
429
+ };
430
+ InkLineageManager.prototype.getOverviewState = function () {
431
+ return this.rightKeyMenuManager.overviewState;
432
+ };
433
+ InkLineageManager.prototype.getToolbarState = function () {
434
+ return this.toolbarManager.state;
435
+ };
436
+ /**************************************** 合并链路 *******************************/
437
+ InkLineageManager.prototype.updateFoldStatus = function (checked) {
438
+ this.foldLineageManager.updateFoldStatus(checked);
439
+ };
440
+ InkLineageManager.prototype.unfoldNodeGroup = function (foldGroupKey, saveStatus) {
441
+ this.foldLineageManager.unfoldNodeGroup(foldGroupKey, saveStatus);
442
+ };
443
+ InkLineageManager.prototype.foldNodeGroup = function (foldGroupKey, saveStatus) {
444
+ this.foldLineageManager.foldNodeGroup(foldGroupKey, saveStatus);
445
+ };
446
+ // update related & unrelated table visible
447
+ InkLineageManager.prototype.updateRelatedTableVisible = function (onlyShowRelated, needUpdate) {
448
+ if (needUpdate === void 0) { needUpdate = true; }
449
+ this.rightKeyMenuManager.updateRelatedTableVisible(onlyShowRelated, needUpdate);
450
+ };
451
+ /**************************************** graph *******************************/
452
+ InkLineageManager.prototype.moveTargetToCenter = function (nodeId) {
453
+ this.graph.moveTargetToCenter(nodeId);
454
+ };
455
+ InkLineageManager.prototype.appendChild = function (child) {
456
+ this.graph.canvas.appendChild(child);
457
+ };
458
+ InkLineageManager.prototype.getMode = function () {
459
+ var _a;
460
+ return ((_a = this === null || this === void 0 ? void 0 : this.graph) === null || _a === void 0 ? void 0 : _a.mode) || 'NORMAL';
461
+ };
462
+ InkLineageManager.prototype.canvasResize = function (clientWidth, clientHeight) {
463
+ this.graph.canvas.resize(clientWidth, clientHeight);
464
+ };
465
+ InkLineageManager.prototype.getCanvas = function () {
466
+ return this.graph.canvas;
467
+ };
468
+ InkLineageManager.prototype.getNodeInstanceById = function (id) {
469
+ return this.graph.getNodeById(id);
470
+ };
471
+ InkLineageManager.prototype.getNodeOrColumnInstanceById = function (id) {
472
+ return this.graph.getAnchorNodeById(id);
473
+ };
474
+ InkLineageManager.prototype.getEdgeInstanceById = function (id) {
475
+ return this.graph.getEdgeById(id);
476
+ };
477
+ InkLineageManager.prototype.resetPosition = function () {
478
+ this.graph.resetPosition();
479
+ };
480
+ InkLineageManager.prototype.graphUpdate = function () {
481
+ this.graph.update();
482
+ };
483
+ InkLineageManager.prototype.graphRender = function () {
484
+ this.graph.render();
485
+ };
486
+ InkLineageManager.prototype.getGraph = function () {
487
+ return this.graph;
488
+ };
489
+ InkLineageManager.prototype.setGraphData = function (data) {
490
+ this.graph.setData(data);
491
+ };
492
+ return InkLineageManager;
493
+ }());
494
+ export { InkLineageManager };
495
+ //# sourceMappingURL=LineageManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LineageManager.js","sourceRoot":"","sources":["../../src/manager/LineageManager.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,SAAS,EACT,KAAK,EAEL,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAEL,UAAU,GAcX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,cAAc,EAAwB,MAAM,UAAU,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,GAAG,CAAC;AAC/E,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE/D;IAoEE,2BACE,IAA+C,EAC/C,MAA6B;QA9D/B,YAAO,GAAG,IAAI,YAAY,EAAE,CAAC;QAsB7B,gBAAW,GAGL,EAAE,CAAC;QAET,iBAAY,GAGN,EAAE,CAAC;QAET,iBAAY,GAAkB,EAAE,CAAC;QAEjC,4BAAuB,GAGZ,IAAI,CAAC;QAMhB,aAAQ,GAAG,IAAI,GAAG,EAAgD,CAAC;QAEnE,uBAAkB,GAAG,IAAI,GAAG,EAAsC,CAAC;QAEnE,sBAAiB,GAAG,IAAI,GAAG,EAAsC,CAAC;QAElE,aAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;QAElC,kBAAa,GAAmB;YACtC,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,IAAI;SACnB,CAAC;QAUA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;YAC1C,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,IAAc,CAAC;YAChD,CAAC,CAAE,MAAM,CAAC,IAAoB,CAAC;QAEjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnB,cAAc;QACd,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAzBD,sBAAI,0CAAW;aAAf;;YACE,OAAO,MAAA,IAAI,CAAC,aAAa,0CAAE,WAAW,CAAC;QACzC,CAAC;;;OAAA;IAyBO,qCAAS,GAAjB;QAAA,iBAuCC;QAtCC,4BAA4B;QACtB,IAAA,KAAoD,IAAI,CAAC,MAAM,EAA7D,IAAI,UAAA,EAAE,aAAa,mBAAA,EAAE,YAAY,kBAAA,EAAE,UAAU,gBAAgB,CAAC;QACtE,IAAM,KAAK,GAAG,IAAI,KAAK,CAAoD;YACzE,IAAI,MAAA;YACJ,OAAO,EAAE,aAAa;YACtB,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE;gBACL,IAAI,wBACC,UAAU,KACb,YAAY,EAAE,UAAC,IAAY;wBACzB,YAAY,CAAC,IAAI,EAAE,KAAI,CAAC,CAAC;oBAC3B,CAAC,GACF;aACF;YACD,cAAc,EAAE;gBACd,MAAM,EAAE;oBACN,KAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3C,CAAC;gBACD,OAAO,EAAE;oBACP,KAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC3C,CAAC;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,uBAAuB;QACvB,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACzC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAC1C,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAE5C,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACxC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAE9C,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;QAClC,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;QAElC,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAEO,wCAAY,GAApB;QACE,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,8BAAE,GAAF,UACE,IAAY,EACZ,QAAyE;QAEzE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,QAAoC,CAAC,CAAC;IAC9D,CAAC;IAED,gCAAI,GAAJ,UACE,IAAY,EACZ,QAAyE;QAEzE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAoC,CAAC,CAAC;IAChE,CAAC;IAED,gCAAI,GAAJ,UAAK,KAAa,EAAE,IAAU;QAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,+BAAG,GAAH,UACE,IAAY,EACZ,QAAyE;QAEzE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,QAAoC,CAAC,CAAC;IAC/D,CAAC;IAED,kCAAM,GAAN,UACE,KAAqE,EACrE,KAA4C;;QAD5C,sBAAA,EAAA,QAAgD,IAAI,CAAC,UAAU,CAAC,KAAK;QACrE,sBAAA,EAAA,QAAuB,IAAI,CAAC,UAAU,CAAC,KAAK;QAE5C,IAAM,YAAY,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE;YAC/D,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,gBAAgB;YACrD,UAAU,EAAE,MAAA,MAAA,IAAI,CAAC,MAAM,CAAC,YAAY,0CAAE,SAAS,mCAAI,EAAE;YACrD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;SACtB,CAAC,CAAC;QAEH,OAAO,YAAY,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;IAED,kCAAM,GAAN,UAAO,QAAyB;;QAAzB,yBAAA,EAAA,gBAAyB;QAC9B,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAE7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;YAC9B,IAAA,KAAmB,IAAI,CAAC,UAAU,EAAhC,KAAK,WAAA,EAAE,KAAK,WAAoB,CAAC;YAEzC,IAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC,CAAC;YAC1D,IAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC,CAAC;YAE1D,IAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAC7D,IAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,EAAE,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,EAAE,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,kCAAM,GAAN,UAAO,aAAuC;QAC5C,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,yBACb,IAAI,CAAC,aAAa,GAClB,aAAa,CACjB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,8CAAkB,GAAlB;QACE,IAAI,CAAC,aAAa,GAAG;YACnB,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAED,mCAAO,GAAP;;QACE,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;QAEtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,mCAAO,GAAP,UAAQ,IAA+C;QACrD,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;gBACtB,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACvD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;oBACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;oBACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,sCAAU,GAAV,UAAW,IAA+C;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnB,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,OAAO;IACP,yCAAa,GAAb,UAAc,IAGb;QAHD,iBAmCC;;QA/BO,IAAA,KAAgB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAvC,IAAI,UAAA,EAAE,GAAG,SAA8B,CAAC;QAChD,IAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC;QAE3D,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;QAE7B,IAAI,OAAO,EAAE,CAAC;YACZ,IAAM,aAAW,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,CAAC,cAAc,EAAE,CAAC;YAClE,oBAAoB;YACpB,IAAM,gBAAc,GAAG,IAAI,GAAG,EAG3B,CAAC;YACJ,WAAW,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,MAAM,CAAC,UAAC,IAAI;gBACrC,IAAM,SAAS,GAAG,aAAa,CAC7B,IAAI,EACJ,KAAI,CAAC,aAAa,CAAC,WAAW,EAC9B,KAAI,CAAC,aAAa,CAAC,YAAY,EAC/B,aAAW,CACZ,CAAC;gBAEF,IAAI,SAAS,EAAE,CAAC;oBACd,gBAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBACpC,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO;YACL,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,WAAW;SACnB,CAAC;IACJ,CAAC;IAED,8CAAkB,GAAlB;;QACE,MAAA,IAAI,CAAC,aAAa,0CAAE,0BAA0B,CAC5C,IAAI,CAAC,UAAU,EACf,MAAA,IAAI,CAAC,mBAAmB,0CAAE,eAAe,EACzC,MAAA,IAAI,CAAC,mBAAmB,0CAAE,eAAe,EACzC,MAAA,IAAI,CAAC,kBAAkB,0CAAE,aAAa,CACvC,CAAC;QAEF,0CAA0C;QAC1C,MAAA,IAAI,CAAC,aAAa,0CAAE,2BAA2B,CAC7C,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,MAAA,IAAI,CAAC,aAAa,0CAAE,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,MAAA,IAAI,CAAC,aAAa,0CAAE,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,6CAAiB,GAAjB,UACE,KAGG;;QAEH,0BAA0B;QAC1B,MAAA,IAAI,CAAC,WAAW,0CAAE,OAAO,CAAC,UAAC,CAAC;YAC1B,IAAI,CAAC,CAAC;gBAAE,OAAO;YACf,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;YACtB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,0BAA0B;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,MAAA,IAAI,CAAC,WAAW,0CAAE,OAAO,CAAC,UAAC,CAAC;YAC1B,IAAI,CAAC,CAAC;gBAAE,OAAO;YACf,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YACzB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4CAAgB,GAAhB;QACE,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,8CAAkB,GAAlB,UACE,KAGG,EACH,KAAoB,EACpB,UAA0B;QAN5B,iBAmEC;;QA7DC,2BAAA,EAAA,iBAA0B;QAE1B,2BAA2B;QAC3B,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,CAAC,UAAC,CAAC;YAC3B,IAAI,CAAC,CAAC;gBAAE,OAAO;YAEf,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,CAAC,CAAC,QAAQ;gBAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;YACvC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAEnB,IAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,EAAE,CAAC;gBACf,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;gBAC9D,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,CAAC,UAAC,IAAI;YAC9B,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,KAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC;YACxE,IAAI,MAAM,IAAI,IAAI,CAAC,eAAe;gBAAE,OAAO;YAE3C,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,MAAA,IAAI,CAAC,YAAY,0CAAE,OAAO,CAAC,UAAC,CAAC;YAC3B,IAAI,CAAC,CAAC;gBAAE,OAAO;YAEf,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,CAAC,CAAC,QAAQ;gBAAE,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;YAC1C,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAEnB,IAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,OAAO,EAAE,CAAC;gBACf,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;gBAC9D,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,UAAC,IAAI;YAC7B,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,KAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC;YACxE,IAAI,MAAM,IAAI,IAAI,CAAC,eAAe;gBAAE,OAAO;YAE3C,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,GAAG,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,6CAAiB,GAAjB,UAAkB,UAA0B;QAA1B,2BAAA,EAAA,iBAA0B;QAC1C,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,0CAAc,GAAd;QACE,IAAM,uBAAuB,GAAG,IAAI,CAAC,iBAAiB,CACpD,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACvC,CAAC;QAEF,IAAI,uBAAuB,EAAE,CAAC;YAC5B,kBAAkB;YAClB,uBAAuB,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YACjD,uBAAuB,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,6CAAiB,GAAjB,UACE,EAAU;QAEV,IAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;QACxD,IAAM,mBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAChE,IAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAElE,OAAO,CACL,eAAe;YACf,CAAC,CAAA,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,OAAO;gBAC3B,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,oBAAoB,CAAC,CAC1B,CAAC;IACJ,CAAC;IAED,kDAAsB,GAAtB,UAAuB,EAAU;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,sDAA0B,GAA1B,UAA2B,EAAU;QACnC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,uDAA2B,GAA3B,UAA4B,EAAU;QACpC,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,mDAAuB,GAAvB,UACE,UAE8B,EAC9B,UAA0B;QAA1B,2BAAA,EAAA,iBAA0B;QAE1B,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC;QAE1C,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,oBAAoB;QACpB,IAAM,aAAa,GAAG,cAAc,CAClC,UAAU,EACV,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,UAAU,CAAC,KAAK,CACjB,CAAC;QAEF,IAAM,cAAc,GAAG,cAAc,CACnC,UAAU,EACV,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,IAAI,CAAC,UAAU,CAAC,KAAK,EACrB,UAAU,CAAC,MAAM,CAClB,CAAC;QAEF,IAAM,YAAY,GAAG,CAAC,CAAC,MAAM,wCACvB,aAAa,CAAC,YAAY,kBAAK,cAAc,CAAC,YAAY,WAC9D,IAAI,CACL,CAAC;QAEF,IAAM,YAAY,GAAG,CAAC,CAAC,MAAM,wCACvB,aAAa,CAAC,YAAY,kBAAK,cAAc,CAAC,YAAY,WAC9D,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,6CAAiB,GAAjB,UAAkB,EAAU;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,2CAAe,GAAf;QACE,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC;QACzC,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,CAAC;QAChD,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,CAAC;IAClD,CAAC;IAED,iDAAqB,GAArB,UAAsB,EAAU,EAAE,MAAkC;QAClE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,gCAAgC;IAChC,0CAAc,GAAd,UAAe,IAA+C;QAA9D,iBAwBC;QAvBC,sBAAsB;QACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAEtB,oBAAoB;QACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;;YACtB,KAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAEjC,kCAAkC;YAClC,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,CAAC,UAAC,KAAK;gBAC3B,KAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;YAEH,iCAAiC;YACjC,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,CAAC,UAAC,GAAG;gBAC/B,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,oBAAoB;QACpB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;YACtB,KAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uDAA2B,GAA3B,UAA4B,UAAsC;QAChE,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;gBACjC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,6CAAiB,GAAjB,UAAkB,MAAa,EAAE,SAAqB;QACpD,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC1D,CAAC;IAED,6CAAiB,GAAjB;QACE,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,CAAC;IACzC,CAAC;IAED,+EAA+E;IAC/E,sCAAU,GAAV,UAAW,KAAa;QACtB,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,8EAA8E;IAC9E,uDAA2B,GAA3B,UACE,UAE8B;QAE9B,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED,+EAA+E;IAC/E,uBAAuB;IACvB,uCAAW,GAAX,UAAY,IAA4B;QACtC,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,oBAAoB;IACpB,2CAAe,GAAf,UAAgB,IAAuB;QACrC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,oBAAoB;IACpB,2CAAe,GAAf;QACE,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,CAAC;IAC7C,CAAC;IAED,qBAAqB;IACrB,mDAAuB,GAAvB,UAAwB,IAAwB;QAC9C,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,yCAAyC;IACzC,iDAAqB,GAArB,UAAsB,eAA0B;QAC9C,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAClE,CAAC;IAED,gDAAoB,GAApB;QACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;IACpD,CAAC;IAED,+CAAmB,GAAnB;QACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC;IACnD,CAAC;IAED,8CAAkB,GAAlB;QACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC;IAClD,CAAC;IAED,4CAAgB,GAAhB;QACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC;IAChD,CAAC;IAED,2CAAe,GAAf;QACE,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;IACnC,CAAC;IAED,+EAA+E;IAC/E,4CAAgB,GAAhB,UAAiB,OAAgB;QAC/B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,2CAAe,GAAf,UAAgB,YAAoB,EAAE,UAAoB;QACxD,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IAED,yCAAa,GAAb,UAAc,YAAoB,EAAE,UAAoB;QACtD,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,2CAA2C;IAC3C,qDAAyB,GAAzB,UACE,eAAwB,EACxB,UAA0B;QAA1B,2BAAA,EAAA,iBAA0B;QAE1B,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,CAChD,eAAe,EACf,UAAU,CACX,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,8CAAkB,GAAlB,UAAmB,MAAc;QAC/B,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,uCAAW,GAAX,UAAY,KAAY;QACtB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,mCAAO,GAAP;;QACE,OAAO,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,0CAAE,IAAI,KAAI,QAAQ,CAAC;IACvC,CAAC;IAED,wCAAY,GAAZ,UAAa,WAAmB,EAAE,YAAoB;QACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACtD,CAAC;IAED,qCAAS,GAAT;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,+CAAmB,GAAnB,UAAoB,EAAU;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,uDAA2B,GAA3B,UAA4B,EAAU;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,+CAAmB,GAAnB,UAAoB,EAAU;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,yCAAa,GAAb;QACE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,uCAAW,GAAX;QACE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,uCAAW,GAAX;QACE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,oCAAQ,GAAR;QACE,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,wCAAY,GAAZ,UAAa,IAA8D;QACzE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACH,wBAAC;AAAD,CAAC,AA/qBD,IA+qBC"}
@@ -0,0 +1,21 @@
1
+ import { BaseManager } from './BaseManager';
2
+ import { EDashType, IColResBase, ITableResBase } from '../types';
3
+ import { IContextMenuState, IHotspotModalState, IHotspotTipState, IOverViewBase } from '../types';
4
+ export declare class RightKeyMenuManager<TTableData extends ITableResBase<TColumnData>, TColumnData extends IColResBase> extends BaseManager<TTableData, TColumnData> {
5
+ contextMenuState: IContextMenuState;
6
+ overviewState: IOverViewBase;
7
+ edgeDashVisible: EDashType;
8
+ onlyShowRelated: boolean;
9
+ hotspotModalState: IHotspotModalState;
10
+ hotspotTipState: IHotspotTipState;
11
+ setOverview(data: Partial<IOverViewBase>): void;
12
+ showContextMenu(data: IContextMenuState): void;
13
+ hideContextMenu(): void;
14
+ updateEdgeDashVisible(edgeDashVisible: EDashType): void;
15
+ updateRelatedTableVisible(onlyShowRelated: boolean, needUpdate?: boolean): void;
16
+ resetEdgeDashVisible(): void;
17
+ resetOnlyShowRelated(): void;
18
+ updateHotspotModalState(data: IHotspotModalState): void;
19
+ updateHotspotTipState(data: IHotspotTipState): void;
20
+ }
21
+ //# sourceMappingURL=RightKeyMenuManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RightKeyMenuManager.d.ts","sourceRoot":"","sources":["../../src/manager/RightKeyMenuManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAIL,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EAEd,MAAM,UAAU,CAAC;AAGlB,qBAAa,mBAAmB,CAC9B,UAAU,SAAS,aAAa,CAAC,WAAW,CAAC,EAC7C,WAAW,SAAS,WAAW,CAC7B,SAAQ,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC;IAE9C,gBAAgB,EAAE,iBAAiB,CAA0B;IAE7D,aAAa,EAAE,aAAa,CAA4B;IAExD,eAAe,EAAE,SAAS,CAAoB;IAE9C,eAAe,EAAE,OAAO,CAAS;IAEjC,iBAAiB,EAAE,kBAAkB,CAA2B;IAEhE,eAAe,EAAE,gBAAgB,CAAyB;IAG1D,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC;IAQxC,eAAe,CAAC,IAAI,EAAE,iBAAiB;IAMvC,eAAe;IAMf,qBAAqB,CAAC,eAAe,EAAE,SAAS;IAOhD,yBAAyB,CACvB,eAAe,EAAE,OAAO,EACxB,UAAU,GAAE,OAAc;IAa5B,oBAAoB;IAIpB,oBAAoB;IAIpB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB;IAKhD,qBAAqB,CAAC,IAAI,EAAE,gBAAgB;CAI7C"}
@@ -0,0 +1,67 @@
1
+ import { __assign, __extends, __read, __spreadArray } from "tslib";
2
+ import { BaseManager } from './BaseManager';
3
+ import { EDashType } from '../types';
4
+ import { contextMenuDefaultData, hotspotModalDefaultData, hotspotTipDefaultData, EEventEnum, } from '../types';
5
+ import { getOverviewDefaultData } from '../utils';
6
+ var RightKeyMenuManager = /** @class */ (function (_super) {
7
+ __extends(RightKeyMenuManager, _super);
8
+ function RightKeyMenuManager() {
9
+ var _this = _super.apply(this, __spreadArray([], __read(arguments), false)) || this;
10
+ // context menu
11
+ _this.contextMenuState = contextMenuDefaultData;
12
+ _this.overviewState = getOverviewDefaultData();
13
+ _this.edgeDashVisible = EDashType.DIRECT;
14
+ _this.onlyShowRelated = false;
15
+ _this.hotspotModalState = hotspotModalDefaultData;
16
+ _this.hotspotTipState = hotspotTipDefaultData;
17
+ return _this;
18
+ }
19
+ // 更新概览信息
20
+ RightKeyMenuManager.prototype.setOverview = function (data) {
21
+ this.overviewState = __assign(__assign({}, this.overviewState), data);
22
+ this.lineageManager.emit(EEventEnum.OVERVIEW);
23
+ };
24
+ RightKeyMenuManager.prototype.showContextMenu = function (data) {
25
+ this.contextMenuState = data;
26
+ this.lineageManager.emit(EEventEnum.CONTEXT_MENU);
27
+ };
28
+ // hide context menu
29
+ RightKeyMenuManager.prototype.hideContextMenu = function () {
30
+ this.contextMenuState.visible = false;
31
+ this.lineageManager.emit(EEventEnum.CONTEXT_MENU);
32
+ };
33
+ // update direct & indirect table visible
34
+ RightKeyMenuManager.prototype.updateEdgeDashVisible = function (edgeDashVisible) {
35
+ this.edgeDashVisible = edgeDashVisible;
36
+ this.lineageManager.update();
37
+ };
38
+ // update related & unrelated table visible
39
+ RightKeyMenuManager.prototype.updateRelatedTableVisible = function (onlyShowRelated, needUpdate) {
40
+ if (needUpdate === void 0) { needUpdate = true; }
41
+ this.onlyShowRelated = onlyShowRelated;
42
+ if (needUpdate) {
43
+ this.lineageManager.update();
44
+ }
45
+ else {
46
+ this.lineageManager.refreshExtraStatus();
47
+ }
48
+ this.lineageManager.emit(EEventEnum.CONTEXT_MENU);
49
+ };
50
+ RightKeyMenuManager.prototype.resetEdgeDashVisible = function () {
51
+ this.edgeDashVisible = EDashType.DIRECT;
52
+ };
53
+ RightKeyMenuManager.prototype.resetOnlyShowRelated = function () {
54
+ this.onlyShowRelated = false;
55
+ };
56
+ RightKeyMenuManager.prototype.updateHotspotModalState = function (data) {
57
+ this.hotspotModalState = data;
58
+ this.lineageManager.emit(EEventEnum.HOTSPOT_MODAL_UPDATE);
59
+ };
60
+ RightKeyMenuManager.prototype.updateHotspotTipState = function (data) {
61
+ this.hotspotTipState = data;
62
+ this.lineageManager.emit(EEventEnum.HOTSPOT_TIPS);
63
+ };
64
+ return RightKeyMenuManager;
65
+ }(BaseManager));
66
+ export { RightKeyMenuManager };
67
+ //# sourceMappingURL=RightKeyMenuManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RightKeyMenuManager.js","sourceRoot":"","sources":["../../src/manager/RightKeyMenuManager.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAA8B,MAAM,UAAU,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EAKrB,UAAU,GACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD;IAGY,uCAAoC;IAHhD;;QAIE,eAAe;QACf,sBAAgB,GAAsB,sBAAsB,CAAC;QAE7D,mBAAa,GAAkB,sBAAsB,EAAE,CAAC;QAExD,qBAAe,GAAc,SAAS,CAAC,MAAM,CAAC;QAE9C,qBAAe,GAAY,KAAK,CAAC;QAEjC,uBAAiB,GAAuB,uBAAuB,CAAC;QAEhE,qBAAe,GAAqB,qBAAqB,CAAC;;IA8D5D,CAAC;IA5DC,SAAS;IACT,yCAAW,GAAX,UAAY,IAA4B;QACtC,IAAI,CAAC,aAAa,yBACb,IAAI,CAAC,aAAa,GAClB,IAAI,CACR,CAAC;QACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED,6CAAe,GAAf,UAAgB,IAAuB;QACrC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,oBAAoB;IACpB,6CAAe,GAAf;QACE,IAAI,CAAC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,yCAAyC;IACzC,mDAAqB,GAArB,UAAsB,eAA0B;QAC9C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED,2CAA2C;IAC3C,uDAAyB,GAAzB,UACE,eAAwB,EACxB,UAA0B;QAA1B,2BAAA,EAAA,iBAA0B;QAE1B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAED,kDAAoB,GAApB;QACE,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED,kDAAoB,GAApB;QACE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,qDAAuB,GAAvB,UAAwB,IAAwB;QAC9C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAC5D,CAAC;IAED,mDAAqB,GAArB,UAAsB,IAAsB;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IACH,0BAAC;AAAD,CAAC,AA7ED,CAGY,WAAW,GA0EtB"}
@@ -0,0 +1,12 @@
1
+ import { IColumnConfig, INodeConfig, IColResBase, ITableResBase } from '../types';
2
+ import { BaseManager } from './BaseManager';
3
+ export declare class SearchNodeManager<TTableData extends ITableResBase<TColumnData>, TColumnData extends IColResBase> extends BaseManager<TTableData, TColumnData> {
4
+ highlightCurrIndex: number;
5
+ highlightNodesId: string[];
6
+ highlightNodeId: string;
7
+ searchNode(input: string): Map<string, INodeConfig<TTableData, TColumnData> | IColumnConfig<TColumnData>>;
8
+ resetHighLightNodes(): void;
9
+ getNodesBySearch(search: string): Map<string, INodeConfig<TTableData, TColumnData> | IColumnConfig<TColumnData>>;
10
+ highLightById(): void;
11
+ }
12
+ //# sourceMappingURL=SearchNodeManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchNodeManager.d.ts","sourceRoot":"","sources":["../../src/manager/SearchNodeManager.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,WAAW,EACX,WAAW,EACX,aAAa,EACd,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,iBAAiB,CAC5B,UAAU,SAAS,aAAa,CAAC,WAAW,CAAC,EAC7C,WAAW,SAAS,WAAW,CAC/B,SAAQ,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC;IAC5C,kBAAkB,EAAE,MAAM,CAAK;IAE/B,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAE3B,eAAe,EAAE,MAAM,CAAC;IAExB,UAAU,CAAC,KAAK,EAAE,MAAM;IAcxB,mBAAmB;IAgBnB,gBAAgB,CAAC,MAAM,EAAE,MAAM;IAyC/B,aAAa;CAgDd"}