@antv/layout 1.2.8 → 1.2.10

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 (135) hide show
  1. package/dist/5fc550bbb6f708833d84.worker.js +2 -0
  2. package/dist/5fc550bbb6f708833d84.worker.js.map +1 -0
  3. package/dist/index.min.js +1 -1
  4. package/dist/index.min.js.map +1 -1
  5. package/package.json +1 -1
  6. package/dist/5cb5472f0e3cc36231e3.worker.js +0 -2
  7. package/dist/5cb5472f0e3cc36231e3.worker.js.map +0 -1
  8. package/lib/bundle-entry.js +0 -19
  9. package/lib/bundle-entry.js.map +0 -1
  10. package/lib/bundle-supervisor.js +0 -94
  11. package/lib/bundle-supervisor.js.map +0 -1
  12. package/lib/bundle-worker.js +0 -53
  13. package/lib/bundle-worker.js.map +0 -1
  14. package/lib/circular.js +0 -258
  15. package/lib/circular.js.map +0 -1
  16. package/lib/comboCombined.js +0 -441
  17. package/lib/comboCombined.js.map +0 -1
  18. package/lib/concentric.js +0 -229
  19. package/lib/concentric.js.map +0 -1
  20. package/lib/d3Force/forceInBox.js +0 -331
  21. package/lib/d3Force/forceInBox.js.map +0 -1
  22. package/lib/d3Force/index.js +0 -339
  23. package/lib/d3Force/index.js.map +0 -1
  24. package/lib/dagre/acyclic.js +0 -62
  25. package/lib/dagre/acyclic.js.map +0 -1
  26. package/lib/dagre/add-border-segments.js +0 -37
  27. package/lib/dagre/add-border-segments.js.map +0 -1
  28. package/lib/dagre/coordinate-system.js +0 -65
  29. package/lib/dagre/coordinate-system.js.map +0 -1
  30. package/lib/dagre/data/list.js +0 -50
  31. package/lib/dagre/data/list.js.map +0 -1
  32. package/lib/dagre/greedy-fas.js +0 -147
  33. package/lib/dagre/greedy-fas.js.map +0 -1
  34. package/lib/dagre/layout.js +0 -470
  35. package/lib/dagre/layout.js.map +0 -1
  36. package/lib/dagre/nesting-graph.js +0 -153
  37. package/lib/dagre/nesting-graph.js.map +0 -1
  38. package/lib/dagre/normalize.js +0 -98
  39. package/lib/dagre/normalize.js.map +0 -1
  40. package/lib/dagre/order/add-subgraph-constraints.js +0 -45
  41. package/lib/dagre/order/add-subgraph-constraints.js.map +0 -1
  42. package/lib/dagre/order/barycenter.js +0 -23
  43. package/lib/dagre/order/barycenter.js.map +0 -1
  44. package/lib/dagre/order/build-layer-graph.js +0 -96
  45. package/lib/dagre/order/build-layer-graph.js.map +0 -1
  46. package/lib/dagre/order/cross-count.js +0 -63
  47. package/lib/dagre/order/cross-count.js.map +0 -1
  48. package/lib/dagre/order/index.js +0 -91
  49. package/lib/dagre/order/index.js.map +0 -1
  50. package/lib/dagre/order/init-data-order.js +0 -28
  51. package/lib/dagre/order/init-data-order.js.map +0 -1
  52. package/lib/dagre/order/init-order.js +0 -50
  53. package/lib/dagre/order/init-order.js.map +0 -1
  54. package/lib/dagre/order/resolve-conflicts.js +0 -121
  55. package/lib/dagre/order/resolve-conflicts.js.map +0 -1
  56. package/lib/dagre/order/sort-subgraph.js +0 -84
  57. package/lib/dagre/order/sort-subgraph.js.map +0 -1
  58. package/lib/dagre/order/sort.js +0 -74
  59. package/lib/dagre/order/sort.js.map +0 -1
  60. package/lib/dagre/parent-dummy-chains.js +0 -80
  61. package/lib/dagre/parent-dummy-chains.js.map +0 -1
  62. package/lib/dagre/position/bk.js +0 -398
  63. package/lib/dagre/position/bk.js.map +0 -1
  64. package/lib/dagre/position/index.js +0 -54
  65. package/lib/dagre/position/index.js.map +0 -1
  66. package/lib/dagre/rank/feasible-tree.js +0 -164
  67. package/lib/dagre/rank/feasible-tree.js.map +0 -1
  68. package/lib/dagre/rank/index.js +0 -48
  69. package/lib/dagre/rank/index.js.map +0 -1
  70. package/lib/dagre/rank/network-simplex.js +0 -232
  71. package/lib/dagre/rank/network-simplex.js.map +0 -1
  72. package/lib/dagre/rank/util.js +0 -138
  73. package/lib/dagre/rank/util.js.map +0 -1
  74. package/lib/dagre/util.js +0 -289
  75. package/lib/dagre/util.js.map +0 -1
  76. package/lib/dagre.js +0 -545
  77. package/lib/dagre.js.map +0 -1
  78. package/lib/force/forceNBody.js +0 -123
  79. package/lib/force/forceNBody.js.map +0 -1
  80. package/lib/force/index.js +0 -808
  81. package/lib/force/index.js.map +0 -1
  82. package/lib/force/types.js +0 -2
  83. package/lib/force/types.js.map +0 -1
  84. package/lib/forceAtlas2/body.js +0 -91
  85. package/lib/forceAtlas2/body.js.map +0 -1
  86. package/lib/forceAtlas2/index.js +0 -562
  87. package/lib/forceAtlas2/index.js.map +0 -1
  88. package/lib/forceAtlas2/quad.js +0 -98
  89. package/lib/forceAtlas2/quad.js.map +0 -1
  90. package/lib/forceAtlas2/quadTree.js +0 -105
  91. package/lib/forceAtlas2/quadTree.js.map +0 -1
  92. package/lib/fruchterman.js +0 -376
  93. package/lib/fruchterman.js.map +0 -1
  94. package/lib/grid.js +0 -308
  95. package/lib/grid.js.map +0 -1
  96. package/lib/index.js +0 -17
  97. package/lib/index.js.map +0 -1
  98. package/lib/mds.js +0 -137
  99. package/lib/mds.js.map +0 -1
  100. package/lib/radial/index.js +0 -355
  101. package/lib/radial/index.js.map +0 -1
  102. package/lib/radial/mds.js +0 -29
  103. package/lib/radial/mds.js.map +0 -1
  104. package/lib/radial/radial-nonoverlap-force.js +0 -100
  105. package/lib/radial/radial-nonoverlap-force.js.map +0 -1
  106. package/lib/random.js +0 -98
  107. package/lib/random.js.map +0 -1
  108. package/lib/registry.js +0 -27
  109. package/lib/registry.js.map +0 -1
  110. package/lib/supervisor.js +0 -90
  111. package/lib/supervisor.js.map +0 -1
  112. package/lib/types.js +0 -4
  113. package/lib/types.js.map +0 -1
  114. package/lib/util/array.js +0 -2
  115. package/lib/util/array.js.map +0 -1
  116. package/lib/util/common.d.ts +0 -12
  117. package/lib/util/common.js +0 -32
  118. package/lib/util/common.js.map +0 -1
  119. package/lib/util/function.js +0 -127
  120. package/lib/util/function.js.map +0 -1
  121. package/lib/util/gpu.js +0 -214
  122. package/lib/util/gpu.js.map +0 -1
  123. package/lib/util/index.js +0 -7
  124. package/lib/util/index.js.map +0 -1
  125. package/lib/util/math.js +0 -257
  126. package/lib/util/math.js.map +0 -1
  127. package/lib/util/number.js +0 -5
  128. package/lib/util/number.js.map +0 -1
  129. package/lib/util/object.js +0 -42
  130. package/lib/util/object.js.map +0 -1
  131. package/lib/util/string.js +0 -15
  132. package/lib/util/string.js.map +0 -1
  133. package/lib/worker.d.ts +0 -1
  134. package/lib/worker.js +0 -45
  135. package/lib/worker.js.map +0 -1
@@ -1,441 +0,0 @@
1
- import { __assign, __awaiter, __generator, __read, __spreadArray } from "tslib";
2
- import { isFunction, isNumber, isObject } from '@antv/util';
3
- import { Graph as GraphCore } from '@antv/graphlib';
4
- import { isArray, getLayoutBBox, graphTreeDfs } from './util';
5
- import { handleSingleNodeGraph } from './util/common';
6
- import { MDSLayout } from './mds';
7
- import { ForceLayout } from './force';
8
- import { ConcentricLayout } from './concentric';
9
- var FORCE_LAYOUT_TYPE_MAP = {
10
- gForce: true,
11
- force2: true,
12
- d3force: true,
13
- fruchterman: true,
14
- forceAtlas2: true,
15
- force: true,
16
- 'graphin-force': true,
17
- };
18
- var DEFAULTS_LAYOUT_OPTIONS = {
19
- center: [0, 0],
20
- comboPadding: 10,
21
- treeKey: 'combo',
22
- };
23
- /**
24
- * Layout arranging the nodes and combos with combination of inner and outer layouts.
25
- *
26
- * @example
27
- * // Assign layout options when initialization.
28
- * const layout = new ComboCombinedLayout({});
29
- * const positions = await layout.execute(graph); // { nodes: [], edges: [] }
30
- *
31
- * // Or use different options later.
32
- * const layout = new ComboCombinedLayout({ radius: 10 });
33
- * const positions = await layout.execute(graph, { radius: 20 }); // { nodes: [], edges: [] }
34
- *
35
- * // If you want to assign the positions directly to the nodes, use assign method.
36
- * await layout.assign(graph, { radius: 20 });
37
- */
38
- var ComboCombinedLayout = /** @class */ (function () {
39
- function ComboCombinedLayout(options) {
40
- if (options === void 0) { options = {}; }
41
- this.options = options;
42
- this.id = 'comboCombined';
43
- this.options = __assign(__assign({}, DEFAULTS_LAYOUT_OPTIONS), options);
44
- }
45
- /**
46
- * Return the positions of nodes and edges(if needed).
47
- */
48
- ComboCombinedLayout.prototype.execute = function (graph, options) {
49
- return __awaiter(this, void 0, void 0, function () {
50
- return __generator(this, function (_a) {
51
- return [2 /*return*/, this.genericComboCombinedLayout(false, graph, options)];
52
- });
53
- });
54
- };
55
- /**
56
- * To directly assign the positions to the nodes.
57
- */
58
- ComboCombinedLayout.prototype.assign = function (graph, options) {
59
- return __awaiter(this, void 0, void 0, function () {
60
- return __generator(this, function (_a) {
61
- switch (_a.label) {
62
- case 0: return [4 /*yield*/, this.genericComboCombinedLayout(true, graph, options)];
63
- case 1:
64
- _a.sent();
65
- return [2 /*return*/];
66
- }
67
- });
68
- });
69
- };
70
- ComboCombinedLayout.prototype.genericComboCombinedLayout = function (assign, graph, options) {
71
- return __awaiter(this, void 0, void 0, function () {
72
- var mergedOptions, center, treeKey, propsOuterLayout, nodes, combos, edges, n, layoutNodes, nodeMap, comboMap, comboNodes, innerGraphLayoutPromises, outerNodeIds, outerLayoutNodes, nodeAncestorIdMap, allHaveNoPosition, outerLayoutEdges, outerPositions, outerLayoutGraph, outerLayout, outerLayoutPreset, result;
73
- return __generator(this, function (_a) {
74
- switch (_a.label) {
75
- case 0:
76
- mergedOptions = this.initVals(__assign(__assign({}, this.options), options));
77
- center = mergedOptions.center, treeKey = mergedOptions.treeKey, propsOuterLayout = mergedOptions.outerLayout;
78
- nodes = graph
79
- .getAllNodes()
80
- .filter(function (node) { return !node.data._isCombo; });
81
- combos = graph
82
- .getAllNodes()
83
- .filter(function (node) { return node.data._isCombo; });
84
- edges = graph.getAllEdges();
85
- n = nodes === null || nodes === void 0 ? void 0 : nodes.length;
86
- if (!n || n === 1) {
87
- return [2 /*return*/, handleSingleNodeGraph(graph, assign, center)];
88
- }
89
- layoutNodes = [];
90
- nodeMap = new Map();
91
- nodes.forEach(function (node) {
92
- nodeMap.set(node.id, node);
93
- });
94
- comboMap = new Map();
95
- combos.forEach(function (combo) {
96
- comboMap.set(combo.id, combo);
97
- });
98
- comboNodes = new Map();
99
- innerGraphLayoutPromises = this.getInnerGraphs(graph, treeKey, nodeMap, comboMap, edges, mergedOptions, comboNodes);
100
- return [4 /*yield*/, Promise.all(innerGraphLayoutPromises)];
101
- case 1:
102
- _a.sent();
103
- outerNodeIds = new Map();
104
- outerLayoutNodes = [];
105
- nodeAncestorIdMap = new Map();
106
- allHaveNoPosition = true;
107
- graph.getRoots(treeKey).forEach(function (root) {
108
- var combo = comboNodes.get(root.id);
109
- var cacheCombo = comboMap.get(root.id) || nodeMap.get(root.id);
110
- var comboLayoutNode = {
111
- id: root.id,
112
- data: __assign(__assign({}, root.data), { x: combo.data.x || cacheCombo.data.x, y: combo.data.y || cacheCombo.data.y, fx: combo.data.fx || cacheCombo.data.fx, fy: combo.data.fy || cacheCombo.data.fy, mass: combo.data.mass || cacheCombo.data.mass, size: combo.data.size }),
113
- };
114
- outerLayoutNodes.push(comboLayoutNode);
115
- outerNodeIds.set(root.id, true);
116
- if (!isNaN(comboLayoutNode.data.x) &&
117
- comboLayoutNode.data.x !== 0 &&
118
- !isNaN(comboLayoutNode.data.y) &&
119
- comboLayoutNode.data.y !== 0) {
120
- allHaveNoPosition = false;
121
- }
122
- else {
123
- comboLayoutNode.data.x = Math.random() * 100;
124
- comboLayoutNode.data.y = Math.random() * 100;
125
- }
126
- graphTreeDfs(graph, [root], function (child) {
127
- if (child.id !== root.id)
128
- nodeAncestorIdMap.set(child.id, root.id);
129
- }, 'TB', treeKey);
130
- });
131
- outerLayoutEdges = [];
132
- edges.forEach(function (edge) {
133
- var sourceAncestorId = nodeAncestorIdMap.get(edge.source) || edge.source;
134
- var targetAncestorId = nodeAncestorIdMap.get(edge.target) || edge.target;
135
- // create an edge for outer layout if both source and target's ancestor combo is in outer layout nodes
136
- if (sourceAncestorId !== targetAncestorId &&
137
- outerNodeIds.has(sourceAncestorId) &&
138
- outerNodeIds.has(targetAncestorId)) {
139
- outerLayoutEdges.push({
140
- id: edge.id,
141
- source: sourceAncestorId,
142
- target: targetAncestorId,
143
- data: {},
144
- });
145
- }
146
- });
147
- if (!(outerLayoutNodes === null || outerLayoutNodes === void 0 ? void 0 : outerLayoutNodes.length)) return [3 /*break*/, 7];
148
- if (!(outerLayoutNodes.length === 1)) return [3 /*break*/, 2];
149
- outerLayoutNodes[0].data.x = center[0];
150
- outerLayoutNodes[0].data.y = center[1];
151
- return [3 /*break*/, 6];
152
- case 2:
153
- outerLayoutGraph = new GraphCore({
154
- nodes: outerLayoutNodes,
155
- edges: outerLayoutEdges,
156
- });
157
- outerLayout = propsOuterLayout || new ForceLayout();
158
- if (!(allHaveNoPosition && FORCE_LAYOUT_TYPE_MAP[outerLayout.id])) return [3 /*break*/, 4];
159
- outerLayoutPreset = outerLayoutNodes.length < 100
160
- ? new MDSLayout()
161
- : new ConcentricLayout();
162
- return [4 /*yield*/, outerLayoutPreset.assign(outerLayoutGraph)];
163
- case 3:
164
- _a.sent();
165
- _a.label = 4;
166
- case 4: return [4 /*yield*/, outerLayout.execute(outerLayoutGraph, __assign({ center: center, kg: 5, preventOverlap: true, animate: false }, (outerLayout.id === 'force'
167
- ? {
168
- gravity: 1,
169
- factor: 4,
170
- linkDistance: function (edge, source, target) {
171
- var sourceSize = Math.max.apply(Math, __spreadArray([], __read(source.data.size))) || 32;
172
- var targetSize = Math.max.apply(Math, __spreadArray([], __read(target.data.size))) || 32;
173
- return sourceSize / 2 + targetSize / 2 + 200;
174
- },
175
- }
176
- : {})))];
177
- case 5:
178
- outerPositions = _a.sent();
179
- _a.label = 6;
180
- case 6:
181
- // move the combos and their child nodes
182
- comboNodes.forEach(function (comboNode) {
183
- var _a;
184
- var outerPosition = outerPositions.nodes.find(function (pos) { return pos.id === comboNode.id; });
185
- if (outerPosition) {
186
- // if it is one of the outer layout nodes, update the positions
187
- var _b = outerPosition.data, x_1 = _b.x, y_1 = _b.y;
188
- comboNode.data.visited = true;
189
- comboNode.data.x = x_1;
190
- comboNode.data.y = y_1;
191
- layoutNodes.push({
192
- id: comboNode.id,
193
- data: { x: x_1, y: y_1 },
194
- });
195
- }
196
- // move the child nodes
197
- var _c = comboNode.data, x = _c.x, y = _c.y;
198
- (_a = comboNode.data.nodes) === null || _a === void 0 ? void 0 : _a.forEach(function (node) {
199
- layoutNodes.push({
200
- id: node.id,
201
- data: { x: node.data.x + x, y: node.data.y + y },
202
- });
203
- });
204
- });
205
- // move the nodes from top to bottom
206
- comboNodes.forEach(function (_a) {
207
- var _b;
208
- var data = _a.data;
209
- var x = data.x, y = data.y, visited = data.visited, nodes = data.nodes;
210
- (_b = nodes) === null || _b === void 0 ? void 0 : _b.forEach(function (node) {
211
- if (!visited) {
212
- var layoutNode = layoutNodes.find(function (n) { return n.id === node.id; });
213
- layoutNode.data.x += x || 0;
214
- layoutNode.data.y += y || 0;
215
- }
216
- });
217
- });
218
- _a.label = 7;
219
- case 7:
220
- if (assign) {
221
- layoutNodes.forEach(function (node) {
222
- graph.mergeNodeData(node.id, {
223
- x: node.data.x,
224
- y: node.data.y,
225
- });
226
- });
227
- }
228
- result = {
229
- nodes: layoutNodes,
230
- edges: edges,
231
- };
232
- return [2 /*return*/, result];
233
- }
234
- });
235
- });
236
- };
237
- ComboCombinedLayout.prototype.initVals = function (options) {
238
- var formattedOptions = __assign({}, options);
239
- var nodeSize = options.nodeSize, spacing = options.spacing, comboPadding = options.comboPadding;
240
- var nodeSizeFunc;
241
- var spacingFunc;
242
- // nodeSpacing to function
243
- if (isNumber(spacing)) {
244
- spacingFunc = function () { return spacing; };
245
- }
246
- else if (isFunction(spacing)) {
247
- spacingFunc = spacing;
248
- }
249
- else {
250
- spacingFunc = function () { return 0; };
251
- }
252
- formattedOptions.spacing = spacingFunc;
253
- // nodeSize to function
254
- if (!nodeSize) {
255
- nodeSizeFunc = function (d) {
256
- var spacing = spacingFunc(d);
257
- if (d.size) {
258
- if (isArray(d.size)) {
259
- var res = d.size[0] > d.size[1] ? d.size[0] : d.size[1];
260
- return (res + spacing) / 2;
261
- }
262
- if (isObject(d.size)) {
263
- var res = d.size.width > d.size.height ? d.size.width : d.size.height;
264
- return (res + spacing) / 2;
265
- }
266
- return (d.size + spacing) / 2;
267
- }
268
- return 32 + spacing / 2;
269
- };
270
- }
271
- else if (isFunction(nodeSize)) {
272
- nodeSizeFunc = function (d) {
273
- var size = nodeSize(d);
274
- var spacing = spacingFunc(d);
275
- if (isArray(d.size)) {
276
- var res = d.size[0] > d.size[1] ? d.size[0] : d.size[1];
277
- return (res + spacing) / 2;
278
- }
279
- return ((size || 32) + spacing) / 2;
280
- };
281
- }
282
- else if (isArray(nodeSize)) {
283
- var larger = nodeSize[0] > nodeSize[1] ? nodeSize[0] : nodeSize[1];
284
- var radius_1 = larger / 2;
285
- nodeSizeFunc = function (d) { return radius_1 + spacingFunc(d) / 2; };
286
- }
287
- else {
288
- // number type
289
- var radius_2 = nodeSize / 2;
290
- nodeSizeFunc = function (d) { return radius_2 + spacingFunc(d) / 2; };
291
- }
292
- formattedOptions.nodeSize = nodeSizeFunc;
293
- // comboPadding to function
294
- var comboPaddingFunc;
295
- if (isNumber(comboPadding)) {
296
- comboPaddingFunc = function () { return comboPadding; };
297
- }
298
- else if (isArray(comboPadding)) {
299
- comboPaddingFunc = function () { return Math.max.apply(null, comboPadding); };
300
- }
301
- else if (isFunction(comboPadding)) {
302
- comboPaddingFunc = comboPadding;
303
- }
304
- else {
305
- // null type
306
- comboPaddingFunc = function () { return 0; };
307
- }
308
- formattedOptions.comboPadding = comboPaddingFunc;
309
- return formattedOptions;
310
- };
311
- ComboCombinedLayout.prototype.getInnerGraphs = function (graph, treeKey, nodeMap, comboMap, edges, options, comboNodes) {
312
- var _this = this;
313
- var nodeSize = options.nodeSize, comboPadding = options.comboPadding, spacing = options.spacing, innerLayout = options.innerLayout;
314
- var innerGraphLayout = innerLayout || new ConcentricLayout({});
315
- var innerLayoutOptions = {
316
- center: [0, 0],
317
- preventOverlap: true,
318
- nodeSpacing: spacing,
319
- };
320
- var innerLayoutPromises = [];
321
- var getSize = function (node) {
322
- // @ts-ignore
323
- var padding = (comboPadding === null || comboPadding === void 0 ? void 0 : comboPadding(node)) || 10;
324
- if (isArray(padding))
325
- padding = Math.max.apply(Math, __spreadArray([], __read(padding)));
326
- return {
327
- size: padding ? [padding * 2, padding * 2] : [30, 30],
328
- padding: padding,
329
- };
330
- };
331
- graph.getRoots(treeKey).forEach(function (root) {
332
- // @ts-ignore
333
- comboNodes.set(root.id, {
334
- id: root.id,
335
- data: {
336
- nodes: [],
337
- size: getSize(root).size,
338
- },
339
- });
340
- var start = Promise.resolve();
341
- // Regard the child nodes in one combo as a graph, and layout them from bottom to top
342
- graphTreeDfs(graph, [root], function (treeNode) {
343
- var _a;
344
- if (!treeNode.data._isCombo)
345
- return;
346
- var _b = getSize(treeNode), nsize = _b.size, padding = _b.padding;
347
- if (!((_a = graph.getChildren(treeNode.id, treeKey)) === null || _a === void 0 ? void 0 : _a.length)) {
348
- // empty combo
349
- comboNodes.set(treeNode.id, {
350
- id: treeNode.id,
351
- data: __assign(__assign({}, treeNode.data), { size: nsize }),
352
- });
353
- }
354
- else {
355
- // combo not empty
356
- var comboNode = comboNodes.get(treeNode.id);
357
- comboNodes.set(treeNode.id, {
358
- id: treeNode.id,
359
- data: __assign({ nodes: [] }, comboNode === null || comboNode === void 0 ? void 0 : comboNode.data),
360
- });
361
- var innerLayoutNodeIds_1 = new Map();
362
- var innerLayoutNodes_1 = graph
363
- .getChildren(treeNode.id, treeKey)
364
- .map(function (child) {
365
- if (child.data._isCombo) {
366
- if (!comboNodes.has(child.id))
367
- comboNodes.set(child.id, {
368
- id: child.id,
369
- data: __assign({}, child.data),
370
- });
371
- innerLayoutNodeIds_1.set(child.id, true);
372
- return comboNodes.get(child.id);
373
- }
374
- var oriNode = nodeMap.get(child.id) || comboMap.get(child.id);
375
- innerLayoutNodeIds_1.set(child.id, true);
376
- return {
377
- id: child.id,
378
- data: __assign(__assign({}, oriNode.data), child.data),
379
- };
380
- });
381
- var innerGraphData_1 = {
382
- nodes: innerLayoutNodes_1,
383
- edges: edges.filter(function (edge) {
384
- return innerLayoutNodeIds_1.has(edge.source) &&
385
- innerLayoutNodeIds_1.has(edge.target);
386
- }),
387
- };
388
- var minNodeSize_1 = Infinity;
389
- innerLayoutNodes_1.forEach(function (node) {
390
- var _a, _b;
391
- var size = node.data.size;
392
- if (!size) {
393
- size = ((_a = comboNodes.get(node.id)) === null || _a === void 0 ? void 0 : _a.data.size) ||
394
- ((_b = nodeSize) === null || _b === void 0 ? void 0 : _b(node)) || [30, 30];
395
- }
396
- if (isNumber(size))
397
- size = [size, size];
398
- var _c = __read(size, 2), size0 = _c[0], size1 = _c[1];
399
- if (minNodeSize_1 > size0)
400
- minNodeSize_1 = size0;
401
- if (minNodeSize_1 > size1)
402
- minNodeSize_1 = size1;
403
- node.data.size = size;
404
- });
405
- // innerGraphLayout.assign(innerGraphCore, innerLayoutOptions);
406
- start = start.then(function () { return __awaiter(_this, void 0, void 0, function () {
407
- var innerGraphCore, innerLayout, _a, minX, minY, maxX, maxY, center, size;
408
- return __generator(this, function (_b) {
409
- switch (_b.label) {
410
- case 0:
411
- innerGraphCore = new GraphCore(innerGraphData_1);
412
- return [4 /*yield*/, innerGraphLayout.assign(innerGraphCore, innerLayoutOptions)];
413
- case 1:
414
- innerLayout = _b.sent();
415
- _a = getLayoutBBox(innerLayoutNodes_1), minX = _a.minX, minY = _a.minY, maxX = _a.maxX, maxY = _a.maxY;
416
- center = { x: (maxX + minX) / 2, y: (maxY + minY) / 2 };
417
- innerGraphData_1.nodes.forEach(function (node) {
418
- node.data.x -= center.x;
419
- node.data.y -= center.y;
420
- });
421
- size = [
422
- Math.max(maxX - minX, minNodeSize_1) + padding * 2,
423
- Math.max(maxY - minY, minNodeSize_1) + padding * 2,
424
- ];
425
- comboNodes.get(treeNode.id).data.size = size;
426
- comboNodes.get(treeNode.id).data.nodes = innerLayoutNodes_1;
427
- return [2 /*return*/, innerLayout];
428
- }
429
- });
430
- }); });
431
- }
432
- return true;
433
- }, 'BT', treeKey);
434
- innerLayoutPromises.push(start);
435
- });
436
- return innerLayoutPromises;
437
- };
438
- return ComboCombinedLayout;
439
- }());
440
- export { ComboCombinedLayout };
441
- //# sourceMappingURL=comboCombined.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comboCombined.js","sourceRoot":"","sources":["../src/comboCombined.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,KAAK,IAAI,SAAS,EAAM,MAAM,gBAAgB,CAAC;AAUxD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,IAAM,qBAAqB,GAA+B;IACxD,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,WAAW,EAAE,IAAI;IACjB,KAAK,EAAE,IAAI;IACX,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,IAAM,uBAAuB,GAAwC;IACnE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACd,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,OAAO;CACjB,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH;IAGE,6BACS,OAAsE;QAAtE,wBAAA,EAAA,UAAsC,EAAgC;QAAtE,YAAO,GAAP,OAAO,CAA+D;QAH/E,OAAE,GAAG,eAAe,CAAC;QAKnB,IAAI,CAAC,OAAO,yBACP,uBAAuB,GACvB,OAAO,CACX,CAAC;IACJ,CAAC;IAED;;OAEG;IACG,qCAAO,GAAb,UAAc,KAAY,EAAE,OAAoC;;;gBAC9D,sBAAO,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAC;;;KAC/D;IAED;;OAEG;IACG,oCAAM,GAAZ,UAAa,KAAY,EAAE,OAAoC;;;;4BAC7D,qBAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAA;;wBAA3D,SAA2D,CAAC;;;;;KAC7D;IAYa,wDAA0B,GAAxC,UACE,MAAe,EACf,KAAY,EACZ,OAAoC;;;;;;wBAE9B,aAAa,GAAG,IAAI,CAAC,QAAQ,uBAAM,IAAI,CAAC,OAAO,GAAK,OAAO,EAAG,CAAC;wBAC7D,MAAM,GAA6C,aAAa,OAA1D,EAAE,OAAO,GAAoC,aAAa,QAAjD,EAAe,gBAAgB,GAAK,aAAa,YAAlB,CAAmB;wBAEnE,KAAK,GAAW,KAAK;6BACxB,WAAW,EAAE;6BACb,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAnB,CAAmB,CAAC,CAAC;wBACnC,MAAM,GAAW,KAAK;6BACzB,WAAW,EAAE;6BACb,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAlB,CAAkB,CAAC,CAAC;wBAClC,KAAK,GAAW,KAAK,CAAC,WAAW,EAAE,CAAC;wBAEpC,CAAC,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC;wBACxB,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;4BACjB,sBAAO,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAC;yBACrD;wBAGG,WAAW,GAAc,EAAE,CAAC;wBAE1B,OAAO,GAAkB,IAAI,GAAG,EAAE,CAAC;wBACzC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;4BACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;wBAC7B,CAAC,CAAC,CAAC;wBACG,QAAQ,GAAkB,IAAI,GAAG,EAAE,CAAC;wBAC1C,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;4BACnB,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;wBAChC,CAAC,CAAC,CAAC;wBAIG,UAAU,GAAkB,IAAI,GAAG,EAAE,CAAC;wBAEtC,wBAAwB,GAAG,IAAI,CAAC,cAAc,CAClD,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,KAAK,EACL,aAAa,EACb,UAAU,CACX,CAAC;wBACF,qBAAM,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAA;;wBAA3C,SAA2C,CAAC;wBAEtC,YAAY,GAAqB,IAAI,GAAG,EAAE,CAAC;wBAC3C,gBAAgB,GAAW,EAAE,CAAC;wBAC9B,iBAAiB,GAAgB,IAAI,GAAG,EAAE,CAAC;wBAC7C,iBAAiB,GAAG,IAAI,CAAC;wBAC7B,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,IAAU;4BACzC,IAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACtC,IAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACjE,IAAM,eAAe,GAAG;gCACtB,EAAE,EAAE,IAAI,CAAC,EAAE;gCACX,IAAI,wBACC,IAAI,CAAC,IAAI,KACZ,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EACpC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EACpC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,EACvC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,EACvC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAC7C,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,GACtB;6BACF,CAAC;4BACF,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;4BACvC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;4BAChC,IACE,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;gCAC9B,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;gCAC5B,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;gCAC9B,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAC5B;gCACA,iBAAiB,GAAG,KAAK,CAAC;6BAC3B;iCAAM;gCACL,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC;gCAC7C,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC;6BAC9C;4BACD,YAAY,CACV,KAAK,EACL,CAAC,IAAI,CAAC,EACN,UAAC,KAAK;gCACJ,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;oCAAE,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;4BACrE,CAAC,EACD,IAAI,EACJ,OAAO,CACR,CAAC;wBACJ,CAAC,CAAC,CAAC;wBAEG,gBAAgB,GAAQ,EAAE,CAAC;wBACjC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;4BACjB,IAAM,gBAAgB,GACpB,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC;4BACpD,IAAM,gBAAgB,GACpB,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC;4BACpD,sGAAsG;4BACtG,IACE,gBAAgB,KAAK,gBAAgB;gCACrC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC;gCAClC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAClC;gCACA,gBAAgB,CAAC,IAAI,CAAC;oCACpB,EAAE,EAAE,IAAI,CAAC,EAAE;oCACX,MAAM,EAAE,gBAAgB;oCACxB,MAAM,EAAE,gBAAgB;oCACxB,IAAI,EAAE,EAAE;iCACT,CAAC,CAAC;6BACJ;wBACH,CAAC,CAAC,CAAC;6BAIC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,MAAM,CAAA,EAAxB,wBAAwB;6BACtB,CAAA,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAA,EAA7B,wBAA6B;wBAC/B,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;wBACvC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;;;wBAEjC,gBAAgB,GAAG,IAAI,SAAS,CAAC;4BACrC,KAAK,EAAE,gBAAgB;4BACvB,KAAK,EAAE,gBAAgB;yBACxB,CAAC,CAAC;wBACG,WAAW,GAAG,gBAAgB,IAAI,IAAI,WAAW,EAAE,CAAC;6BAEtD,CAAA,iBAAiB,IAAI,qBAAqB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA,EAA1D,wBAA0D;wBACtD,iBAAiB,GACrB,gBAAgB,CAAC,MAAM,GAAG,GAAG;4BAC3B,CAAC,CAAC,IAAI,SAAS,EAAE;4BACjB,CAAC,CAAC,IAAI,gBAAgB,EAAE,CAAC;wBAC7B,qBAAM,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAA;;wBAAhD,SAAgD,CAAC;;4BAElC,qBAAM,WAAW,CAAC,OAAO,CAAC,gBAAgB,aACzD,MAAM,QAAA,EACN,EAAE,EAAE,CAAC,EACL,cAAc,EAAE,IAAI,EACpB,OAAO,EAAE,KAAK,IACX,CAAC,WAAW,CAAC,EAAE,KAAK,OAAO;4BAC5B,CAAC,CAAC;gCACE,OAAO,EAAE,CAAC;gCACV,MAAM,EAAE,CAAC;gCACT,YAAY,EAAE,UAAC,IAAU,EAAE,MAAY,EAAE,MAAY;oCACnD,IAAM,UAAU,GACd,IAAI,CAAC,GAAG,OAAR,IAAI,2BAAS,MAAM,CAAC,IAAI,CAAC,IAAiB,OAAK,EAAE,CAAC;oCACpD,IAAM,UAAU,GACd,IAAI,CAAC,GAAG,OAAR,IAAI,2BAAS,MAAM,CAAC,IAAI,CAAC,IAAiB,OAAK,EAAE,CAAC;oCACpD,OAAO,UAAU,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,GAAG,GAAG,CAAC;gCAC/C,CAAC;6BACF;4BACH,CAAC,CAAC,EAAE,CAAC,EACP,EAAA;;wBAlBF,cAAc,GAAG,SAkBf,CAAC;;;wBAGL,wCAAwC;wBACxC,UAAU,CAAC,OAAO,CAAC,UAAC,SAAe;;4BACjC,IAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAC7C,UAAC,GAAS,IAAK,OAAA,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,EAAvB,CAAuB,CACvC,CAAC;4BACF,IAAI,aAAa,EAAE;gCACjB,+DAA+D;gCACzD,IAAA,KAAW,aAAa,CAAC,IAAI,EAA3B,GAAC,OAAA,EAAE,GAAC,OAAuB,CAAC;gCACpC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gCAC9B,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,GAAC,CAAC;gCACrB,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,GAAC,CAAC;gCACrB,WAAW,CAAC,IAAI,CAAC;oCACf,EAAE,EAAE,SAAS,CAAC,EAAE;oCAChB,IAAI,EAAE,EAAE,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE;iCACf,CAAC,CAAC;6BACJ;4BACD,uBAAuB;4BACjB,IAAA,KAAW,SAAS,CAAC,IAAI,EAAvB,CAAC,OAAA,EAAE,CAAC,OAAmB,CAAC;4BAChC,MAAC,SAAS,CAAC,IAAI,CAAC,KAAgB,0CAAE,OAAO,CAAC,UAAC,IAAa;gCACtD,WAAW,CAAC,IAAI,CAAC;oCACf,EAAE,EAAE,IAAI,CAAC,EAAE;oCACX,IAAI,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE;iCACjD,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBACH,oCAAoC;wBACpC,UAAU,CAAC,OAAO,CAAC,UAAC,EAAc;;gCAAZ,IAAI,UAAA;4BAChB,IAAA,CAAC,GAAwB,IAAI,EAA5B,EAAE,CAAC,GAAqB,IAAI,EAAzB,EAAE,OAAO,GAAY,IAAI,QAAhB,EAAE,KAAK,GAAK,IAAI,MAAT,CAAU;4BACtC,MAAC,KAAgB,0CAAE,OAAO,CAAC,UAAC,IAAa;gCACvC,IAAI,CAAC,OAAO,EAAE;oCACZ,IAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAhB,CAAgB,CAAC,CAAC;oCAC7D,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oCAC5B,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iCAC7B;4BACH,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;;;wBAGL,IAAI,MAAM,EAAE;4BACV,WAAW,CAAC,OAAO,CAAC,UAAC,IAAI;gCACvB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE;oCAC3B,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oCACd,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;iCACf,CAAC,CAAC;4BACL,CAAC,CAAC,CAAC;yBACJ;wBAEK,MAAM,GAAG;4BACb,KAAK,EAAE,WAAW;4BAClB,KAAK,OAAA;yBACN,CAAC;wBAEF,sBAAO,MAAM,EAAC;;;;KACf;IAEO,sCAAQ,GAAhB,UAAiB,OAAmC;QAClD,IAAM,gBAAgB,gBAAQ,OAAO,CAAE,CAAC;QAChC,IAAA,QAAQ,GAA4B,OAAO,SAAnC,EAAE,OAAO,GAAmB,OAAO,QAA1B,EAAE,YAAY,GAAK,OAAO,aAAZ,CAAa;QACpD,IAAI,YAAgC,CAAC;QACrC,IAAI,WAA+B,CAAC;QAEpC,0BAA0B;QAC1B,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE;YACrB,WAAW,GAAG,cAAM,OAAA,OAAc,EAAd,CAAc,CAAC;SACpC;aAAM,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE;YAC9B,WAAW,GAAG,OAAO,CAAC;SACvB;aAAM;YACL,WAAW,GAAG,cAAM,OAAA,CAAC,EAAD,CAAC,CAAC;SACvB;QACD,gBAAgB,CAAC,OAAO,GAAG,WAAW,CAAC;QAEvC,uBAAuB;QACvB,IAAI,CAAC,QAAQ,EAAE;YACb,YAAY,GAAG,UAAC,CAAC;gBACf,IAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,CAAC,CAAC,IAAI,EAAE;oBACV,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;wBACnB,IAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAC1D,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;qBAC5B;oBACD,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;wBACpB,IAAM,GAAG,GACP,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;wBAC9D,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;qBAC5B;oBACD,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;iBAC/B;gBACD,OAAO,EAAE,GAAG,OAAO,GAAG,CAAC,CAAC;YAC1B,CAAC,CAAC;SACH;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC/B,YAAY,GAAG,UAAC,CAAC;gBACf,IAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,IAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBACnB,IAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC1D,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;iBAC5B;gBACD,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,CAAC,CAAC;SACH;aAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC5B,IAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACrE,IAAM,QAAM,GAAG,MAAM,GAAG,CAAC,CAAC;YAC1B,YAAY,GAAG,UAAC,CAAC,IAAK,OAAA,QAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAA3B,CAA2B,CAAC;SACnD;aAAM;YACL,cAAc;YACd,IAAM,QAAM,GAAG,QAAQ,GAAG,CAAC,CAAC;YAC5B,YAAY,GAAG,UAAC,CAAC,IAAK,OAAA,QAAM,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAA3B,CAA2B,CAAC;SACnD;QACD,gBAAgB,CAAC,QAAQ,GAAG,YAAY,CAAC;QAEzC,2BAA2B;QAC3B,IAAI,gBAAoC,CAAC;QACzC,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC1B,gBAAgB,GAAG,cAAM,OAAA,YAAmB,EAAnB,CAAmB,CAAC;SAC9C;aAAM,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,gBAAgB,GAAG,cAAM,OAAA,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,YAAY,CAAC,EAAlC,CAAkC,CAAC;SAC7D;aAAM,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE;YACnC,gBAAgB,GAAG,YAAY,CAAC;SACjC;aAAM;YACL,YAAY;YACZ,gBAAgB,GAAG,cAAM,OAAA,CAAC,EAAD,CAAC,CAAC;SAC5B;QACD,gBAAgB,CAAC,YAAY,GAAG,gBAAgB,CAAC;QACjD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEO,4CAAc,GAAtB,UACE,KAAY,EACZ,OAAe,EACf,OAAsB,EACtB,QAAuB,EACvB,KAAa,EACb,OAAmC,EACnC,UAAyB;QAP3B,iBAoJC;QA3IS,IAAA,QAAQ,GAAyC,OAAO,SAAhD,EAAE,YAAY,GAA2B,OAAO,aAAlC,EAAE,OAAO,GAAkB,OAAO,QAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;QAEjE,IAAM,gBAAgB,GAAQ,WAAW,IAAI,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACtE,IAAM,kBAAkB,GAAG;YACzB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACd,cAAc,EAAE,IAAI;YACpB,WAAW,EAAE,OAAO;SACrB,CAAC;QACF,IAAM,mBAAmB,GAAmB,EAAE,CAAC;QAE/C,IAAM,OAAO,GAAG,UAAC,IAAU;YACzB,aAAa;YACb,IAAI,OAAO,GAAG,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,IAAI,CAAC,KAAI,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,OAAO,CAAC;gBAAE,OAAO,GAAG,IAAI,CAAC,GAAG,OAAR,IAAI,2BAAQ,OAAO,GAAC,CAAC;YACrD,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;gBACrD,OAAO,SAAA;aACR,CAAC;QACJ,CAAC,CAAC;QAEF,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,IAAS;YACxC,aAAa;YACb,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;gBACtB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE;oBACJ,KAAK,EAAE,EAAE;oBACT,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI;iBACzB;aACF,CAAC,CAAC;YAEH,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAE9B,qFAAqF;YACrF,YAAY,CACV,KAAK,EACL,CAAC,IAAI,CAAC,EACN,UAAC,QAAQ;;gBACP,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ;oBAAE,OAAO;gBAC9B,IAAA,KAA2B,OAAO,CAAC,QAAQ,CAAC,EAApC,KAAK,UAAA,EAAE,OAAO,aAAsB,CAAC;gBACnD,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,0CAAE,MAAM,CAAA,EAAE;oBACpD,cAAc;oBACd,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;wBAC1B,EAAE,EAAE,QAAQ,CAAC,EAAE;wBACf,IAAI,wBACC,QAAQ,CAAC,IAAI,KAChB,IAAI,EAAE,KAAK,GACZ;qBACF,CAAC,CAAC;iBACJ;qBAAM;oBACL,kBAAkB;oBAClB,IAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC9C,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;wBAC1B,EAAE,EAAE,QAAQ,CAAC,EAAE;wBACf,IAAI,aACF,KAAK,EAAE,EAAE,IACN,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,CACnB;qBACF,CAAC,CAAC;oBACH,IAAM,oBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;oBACrC,IAAM,kBAAgB,GAAG,KAAK;yBAC3B,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;yBACjC,GAAG,CAAC,UAAC,KAAK;wBACT,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;4BACvB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gCAC3B,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE;oCACvB,EAAE,EAAE,KAAK,CAAC,EAAE;oCACZ,IAAI,eACC,KAAK,CAAC,IAAI,CACd;iCACF,CAAC,CAAC;4BACL,oBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;4BACvC,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;yBACjC;wBACD,IAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBAChE,oBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;wBACvC,OAAO;4BACL,EAAE,EAAE,KAAK,CAAC,EAAE;4BACZ,IAAI,wBACC,OAAO,CAAC,IAAI,GACZ,KAAK,CAAC,IAAI,CACd;yBACF,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACL,IAAM,gBAAc,GAAG;wBACrB,KAAK,EAAE,kBAAgB;wBACvB,KAAK,EAAE,KAAK,CAAC,MAAM,CACjB,UAAC,IAAI;4BACH,OAAA,oBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gCACnC,oBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;wBADnC,CACmC,CACtC;qBACF,CAAC;oBACF,IAAI,aAAW,GAAG,QAAQ,CAAC;oBAC3B,kBAAgB,CAAC,OAAO,CAAC,UAAC,IAAI;;wBACtB,IAAA,IAAI,GAAK,IAAI,CAAC,IAAI,KAAd,CAAe;wBACzB,IAAI,CAAC,IAAI,EAAE;4BACT,IAAI,GAAG,CAAA,MAAA,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0CAAE,IAAI,CAAC,IAAI;iCACvC,MAAC,QAAqB,0CAAG,IAAI,CAAC,CAAA,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;yBAC9C;wBACD,IAAI,QAAQ,CAAC,IAAI,CAAC;4BAAE,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAClC,IAAA,KAAA,OAAiB,IAAI,IAAA,EAApB,KAAK,QAAA,EAAE,KAAK,QAAQ,CAAC;wBAC5B,IAAI,aAAW,GAAG,KAAK;4BAAE,aAAW,GAAG,KAAK,CAAC;wBAC7C,IAAI,aAAW,GAAG,KAAK;4BAAE,aAAW,GAAG,KAAK,CAAC;wBAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;oBACxB,CAAC,CAAC,CAAC;oBAEH,+DAA+D;oBAC/D,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;;;;;oCACX,cAAc,GAAG,IAAI,SAAS,CAAC,gBAAc,CAAC,CAAC;oCACjC,qBAAM,gBAAgB,CAAC,MAAM,CAC/C,cAAc,EACd,kBAAkB,CACnB,EAAA;;oCAHK,WAAW,GAAG,SAGnB;oCACK,KAA6B,aAAa,CAC9C,kBAA6B,CAC9B,EAFO,IAAI,UAAA,EAAE,IAAI,UAAA,EAAE,IAAI,UAAA,EAAE,IAAI,UAAA,CAE5B;oCAEI,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oCAC9D,gBAAc,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,IAAI;wCAChC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;wCACxB,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;oCAC1B,CAAC,CAAC,CAAC;oCACG,IAAI,GAAqB;wCAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,aAAW,CAAC,GAAG,OAAO,GAAG,CAAC;wCAChD,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,aAAW,CAAC,GAAG,OAAO,GAAG,CAAC;qCACjD,CAAC;oCAEF,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;oCAC7C,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,kBAAgB,CAAC;oCAC1D,sBAAO,WAAW,EAAC;;;yBACpB,CAAC,CAAC;iBACJ;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,EACD,IAAI,EACJ,OAAO,CACR,CAAC;YACF,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACH,0BAAC;AAAD,CAAC,AAhdD,IAgdC"}