@readme/markdown 7.10.2 → 7.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,811 @@
1
+ "use strict";
2
+ exports.id = 52;
3
+ exports.ids = [52];
4
+ exports.modules = {
5
+
6
+ /***/ 8664:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
+
9
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10
+ /* harmony export */ M: () => (/* binding */ write)
11
+ /* harmony export */ });
12
+ /* unused harmony export read */
13
+ /* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9523);
14
+ /* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7134);
15
+ /* harmony import */ var lodash_es__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8937);
16
+ /* harmony import */ var _graph_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8448);
17
+
18
+
19
+
20
+
21
+
22
+ function write(g) {
23
+ var json = {
24
+ options: {
25
+ directed: g.isDirected(),
26
+ multigraph: g.isMultigraph(),
27
+ compound: g.isCompound(),
28
+ },
29
+ nodes: writeNodes(g),
30
+ edges: writeEdges(g),
31
+ };
32
+ if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(g.graph())) {
33
+ json.value = lodash_es__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A(g.graph());
34
+ }
35
+ return json;
36
+ }
37
+
38
+ function writeNodes(g) {
39
+ return lodash_es__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A(g.nodes(), function (v) {
40
+ var nodeValue = g.node(v);
41
+ var parent = g.parent(v);
42
+ var node = { v: v };
43
+ if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(nodeValue)) {
44
+ node.value = nodeValue;
45
+ }
46
+ if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(parent)) {
47
+ node.parent = parent;
48
+ }
49
+ return node;
50
+ });
51
+ }
52
+
53
+ function writeEdges(g) {
54
+ return lodash_es__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A(g.edges(), function (e) {
55
+ var edgeValue = g.edge(e);
56
+ var edge = { v: e.v, w: e.w };
57
+ if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(e.name)) {
58
+ edge.name = e.name;
59
+ }
60
+ if (!lodash_es__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A(edgeValue)) {
61
+ edge.value = edgeValue;
62
+ }
63
+ return edge;
64
+ });
65
+ }
66
+
67
+ function read(json) {
68
+ var g = new Graph(json.options).setGraph(json.value);
69
+ _.each(json.nodes, function (entry) {
70
+ g.setNode(entry.v, entry.value);
71
+ if (entry.parent) {
72
+ g.setParent(entry.v, entry.parent);
73
+ }
74
+ });
75
+ _.each(json.edges, function (entry) {
76
+ g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value);
77
+ });
78
+ return g;
79
+ }
80
+
81
+
82
+ /***/ }),
83
+
84
+ /***/ 7134:
85
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
86
+
87
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
88
+ /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
89
+ /* harmony export */ });
90
+ /* harmony import */ var _baseClone_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4090);
91
+
92
+
93
+ /** Used to compose bitmasks for cloning. */
94
+ var CLONE_SYMBOLS_FLAG = 4;
95
+
96
+ /**
97
+ * Creates a shallow clone of `value`.
98
+ *
99
+ * **Note:** This method is loosely based on the
100
+ * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)
101
+ * and supports cloning arrays, array buffers, booleans, date objects, maps,
102
+ * numbers, `Object` objects, regexes, sets, strings, symbols, and typed
103
+ * arrays. The own enumerable properties of `arguments` objects are cloned
104
+ * as plain objects. An empty object is returned for uncloneable values such
105
+ * as error objects, functions, DOM nodes, and WeakMaps.
106
+ *
107
+ * @static
108
+ * @memberOf _
109
+ * @since 0.1.0
110
+ * @category Lang
111
+ * @param {*} value The value to clone.
112
+ * @returns {*} Returns the cloned value.
113
+ * @see _.cloneDeep
114
+ * @example
115
+ *
116
+ * var objects = [{ 'a': 1 }, { 'b': 2 }];
117
+ *
118
+ * var shallow = _.clone(objects);
119
+ * console.log(shallow[0] === objects[0]);
120
+ * // => true
121
+ */
122
+ function clone(value) {
123
+ return (0,_baseClone_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .A)(value, CLONE_SYMBOLS_FLAG);
124
+ }
125
+
126
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (clone);
127
+
128
+
129
+ /***/ }),
130
+
131
+ /***/ 9052:
132
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
133
+
134
+ __webpack_require__.r(__webpack_exports__);
135
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
136
+ /* harmony export */ render: () => (/* binding */ render)
137
+ /* harmony export */ });
138
+ /* harmony import */ var _chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1285);
139
+ /* harmony import */ var _chunk_CTJGIJSU_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4875);
140
+ /* harmony import */ var _chunk_I3FGKTZ5_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6971);
141
+ /* harmony import */ var _chunk_U7L4IQIU_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5449);
142
+ /* harmony import */ var _chunk_TLUHKHBO_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(2843);
143
+ /* harmony import */ var _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6322);
144
+ /* harmony import */ var dagre_d3_es_src_dagre_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(995);
145
+ /* harmony import */ var dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(8664);
146
+ /* harmony import */ var dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(4416);
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+ // src/rendering-util/layout-algorithms/dagre/index.js
155
+
156
+
157
+
158
+
159
+ // src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js
160
+
161
+
162
+ var clusterDb = /* @__PURE__ */ new Map();
163
+ var descendants = /* @__PURE__ */ new Map();
164
+ var parents = /* @__PURE__ */ new Map();
165
+ var clear4 = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)(() => {
166
+ descendants.clear();
167
+ parents.clear();
168
+ clusterDb.clear();
169
+ }, "clear");
170
+ var isDescendant = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((id, ancestorId) => {
171
+ const ancestorDescendants = descendants.get(ancestorId) || [];
172
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace("In isDescendant", ancestorId, " ", id, " = ", ancestorDescendants.includes(id));
173
+ return ancestorDescendants.includes(id);
174
+ }, "isDescendant");
175
+ var edgeInCluster = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((edge, clusterId) => {
176
+ const clusterDescendants = descendants.get(clusterId) || [];
177
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Descendants of ", clusterId, " is ", clusterDescendants);
178
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge is ", edge);
179
+ if (edge.v === clusterId || edge.w === clusterId) {
180
+ return false;
181
+ }
182
+ if (!clusterDescendants) {
183
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Tilt, ", clusterId, ",not in descendants");
184
+ return false;
185
+ }
186
+ return clusterDescendants.includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || clusterDescendants.includes(edge.w);
187
+ }, "edgeInCluster");
188
+ var copy = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((clusterId, graph, newGraph, rootId) => {
189
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(
190
+ "Copying children of ",
191
+ clusterId,
192
+ "root",
193
+ rootId,
194
+ "data",
195
+ graph.node(clusterId),
196
+ rootId
197
+ );
198
+ const nodes = graph.children(clusterId) || [];
199
+ if (clusterId !== rootId) {
200
+ nodes.push(clusterId);
201
+ }
202
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Copying (nodes) clusterId", clusterId, "nodes", nodes);
203
+ nodes.forEach((node) => {
204
+ if (graph.children(node).length > 0) {
205
+ copy(node, graph, newGraph, rootId);
206
+ } else {
207
+ const data = graph.node(node);
208
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("cp ", node, " to ", rootId, " with parent ", clusterId);
209
+ newGraph.setNode(node, data);
210
+ if (rootId !== graph.parent(node)) {
211
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Setting parent", node, graph.parent(node));
212
+ newGraph.setParent(node, graph.parent(node));
213
+ }
214
+ if (clusterId !== rootId && node !== clusterId) {
215
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Setting parent", node, clusterId);
216
+ newGraph.setParent(node, clusterId);
217
+ } else {
218
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("In copy ", clusterId, "root", rootId, "data", graph.node(clusterId), rootId);
219
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug(
220
+ "Not Setting parent for node=",
221
+ node,
222
+ "cluster!==rootId",
223
+ clusterId !== rootId,
224
+ "node!==clusterId",
225
+ node !== clusterId
226
+ );
227
+ }
228
+ const edges = graph.edges(node);
229
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Copying Edges", edges);
230
+ edges.forEach((edge) => {
231
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge", edge);
232
+ const data2 = graph.edge(edge.v, edge.w, edge.name);
233
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge data", data2, rootId);
234
+ try {
235
+ if (edgeInCluster(edge, rootId)) {
236
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Copying as ", edge.v, edge.w, data2, edge.name);
237
+ newGraph.setEdge(edge.v, edge.w, data2, edge.name);
238
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("newGraph edges ", newGraph.edges(), newGraph.edge(newGraph.edges()[0]));
239
+ } else {
240
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
241
+ "Skipping copy of edge ",
242
+ edge.v,
243
+ "-->",
244
+ edge.w,
245
+ " rootId: ",
246
+ rootId,
247
+ " clusterId:",
248
+ clusterId
249
+ );
250
+ }
251
+ } catch (e) {
252
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.error(e);
253
+ }
254
+ });
255
+ }
256
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Removing node", node);
257
+ graph.removeNode(node);
258
+ });
259
+ }, "copy");
260
+ var extractDescendants = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((id, graph) => {
261
+ const children = graph.children(id);
262
+ let res = [...children];
263
+ for (const child of children) {
264
+ parents.set(child, id);
265
+ res = [...res, ...extractDescendants(child, graph)];
266
+ }
267
+ return res;
268
+ }, "extractDescendants");
269
+ var findCommonEdges = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((graph, id1, id2) => {
270
+ const edges1 = graph.edges().filter((edge) => edge.v === id1 || edge.w === id1);
271
+ const edges2 = graph.edges().filter((edge) => edge.v === id2 || edge.w === id2);
272
+ const edges1Prim = edges1.map((edge) => {
273
+ return { v: edge.v === id1 ? id2 : edge.v, w: edge.w === id1 ? id1 : edge.w };
274
+ });
275
+ const edges2Prim = edges2.map((edge) => {
276
+ return { v: edge.v, w: edge.w };
277
+ });
278
+ const result = edges1Prim.filter((edgeIn1) => {
279
+ return edges2Prim.some((edge) => edgeIn1.v === edge.v && edgeIn1.w === edge.w);
280
+ });
281
+ return result;
282
+ }, "findCommonEdges");
283
+ var findNonClusterChild = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((id, graph, clusterId) => {
284
+ const children = graph.children(id);
285
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace("Searching children of id ", id, children);
286
+ if (children.length < 1) {
287
+ return id;
288
+ }
289
+ let reserve;
290
+ for (const child of children) {
291
+ const _id = findNonClusterChild(child, graph, clusterId);
292
+ const commonEdges = findCommonEdges(graph, clusterId, _id);
293
+ if (_id) {
294
+ if (commonEdges.length > 0) {
295
+ reserve = _id;
296
+ } else {
297
+ return _id;
298
+ }
299
+ }
300
+ }
301
+ return reserve;
302
+ }, "findNonClusterChild");
303
+ var getAnchorId = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((id) => {
304
+ if (!clusterDb.has(id)) {
305
+ return id;
306
+ }
307
+ if (!clusterDb.get(id).externalConnections) {
308
+ return id;
309
+ }
310
+ if (clusterDb.has(id)) {
311
+ return clusterDb.get(id).id;
312
+ }
313
+ return id;
314
+ }, "getAnchorId");
315
+ var adjustClustersAndEdges = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((graph, depth) => {
316
+ if (!graph || depth > 10) {
317
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Opting out, no graph ");
318
+ return;
319
+ } else {
320
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Opting in, graph ");
321
+ }
322
+ graph.nodes().forEach(function(id) {
323
+ const children = graph.children(id);
324
+ if (children.length > 0) {
325
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(
326
+ "Cluster identified",
327
+ id,
328
+ " Replacement id in edges: ",
329
+ findNonClusterChild(id, graph, id)
330
+ );
331
+ descendants.set(id, extractDescendants(id, graph));
332
+ clusterDb.set(id, { id: findNonClusterChild(id, graph, id), clusterData: graph.node(id) });
333
+ }
334
+ });
335
+ graph.nodes().forEach(function(id) {
336
+ const children = graph.children(id);
337
+ const edges = graph.edges();
338
+ if (children.length > 0) {
339
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Cluster identified", id, descendants);
340
+ edges.forEach((edge) => {
341
+ const d1 = isDescendant(edge.v, id);
342
+ const d2 = isDescendant(edge.w, id);
343
+ if (d1 ^ d2) {
344
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Edge: ", edge, " leaves cluster ", id);
345
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Descendants of XXX ", id, ": ", descendants.get(id));
346
+ clusterDb.get(id).externalConnections = true;
347
+ }
348
+ });
349
+ } else {
350
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Not a cluster ", id, descendants);
351
+ }
352
+ });
353
+ for (let id of clusterDb.keys()) {
354
+ const nonClusterChild = clusterDb.get(id).id;
355
+ const parent = graph.parent(nonClusterChild);
356
+ if (parent !== id && clusterDb.has(parent) && !clusterDb.get(parent).externalConnections) {
357
+ clusterDb.get(id).id = parent;
358
+ }
359
+ }
360
+ graph.edges().forEach(function(e) {
361
+ const edge = graph.edge(e);
362
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(e));
363
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(graph.edge(e)));
364
+ let v = e.v;
365
+ let w = e.w;
366
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(
367
+ "Fix XXX",
368
+ clusterDb,
369
+ "ids:",
370
+ e.v,
371
+ e.w,
372
+ "Translating: ",
373
+ clusterDb.get(e.v),
374
+ " --- ",
375
+ clusterDb.get(e.w)
376
+ );
377
+ if (clusterDb.get(e.v) || clusterDb.get(e.w)) {
378
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Fixing and trying - removing XXX", e.v, e.w, e.name);
379
+ v = getAnchorId(e.v);
380
+ w = getAnchorId(e.w);
381
+ graph.removeEdge(e.v, e.w, e.name);
382
+ if (v !== e.v) {
383
+ const parent = graph.parent(v);
384
+ clusterDb.get(parent).externalConnections = true;
385
+ edge.fromCluster = e.v;
386
+ }
387
+ if (w !== e.w) {
388
+ const parent = graph.parent(w);
389
+ clusterDb.get(parent).externalConnections = true;
390
+ edge.toCluster = e.w;
391
+ }
392
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Fix Replacing with XXX", v, w, e.name);
393
+ graph.setEdge(v, w, edge, e.name);
394
+ }
395
+ });
396
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Adjusted Graph", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph));
397
+ extractor(graph, 0);
398
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace(clusterDb);
399
+ }, "adjustClustersAndEdges");
400
+ var extractor = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((graph, depth) => {
401
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("extractor - ", depth, dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph), graph.children("D"));
402
+ if (depth > 10) {
403
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.error("Bailing out");
404
+ return;
405
+ }
406
+ let nodes = graph.nodes();
407
+ let hasChildren = false;
408
+ for (const node of nodes) {
409
+ const children = graph.children(node);
410
+ hasChildren = hasChildren || children.length > 0;
411
+ }
412
+ if (!hasChildren) {
413
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Done, no node has children", graph.nodes());
414
+ return;
415
+ }
416
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Nodes = ", nodes, depth);
417
+ for (const node of nodes) {
418
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug(
419
+ "Extracting node",
420
+ node,
421
+ clusterDb,
422
+ clusterDb.has(node) && !clusterDb.get(node).externalConnections,
423
+ !graph.parent(node),
424
+ graph.node(node),
425
+ graph.children("D"),
426
+ " Depth ",
427
+ depth
428
+ );
429
+ if (!clusterDb.has(node)) {
430
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Not a cluster", node, depth);
431
+ } else if (!clusterDb.get(node).externalConnections && graph.children(node) && graph.children(node).length > 0) {
432
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(
433
+ "Cluster without external connections, without a parent and with children",
434
+ node,
435
+ depth
436
+ );
437
+ const graphSettings = graph.graph();
438
+ let dir = graphSettings.rankdir === "TB" ? "LR" : "TB";
439
+ if (clusterDb.get(node)?.clusterData?.dir) {
440
+ dir = clusterDb.get(node).clusterData.dir;
441
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Fixing dir", clusterDb.get(node).clusterData.dir, dir);
442
+ }
443
+ const clusterGraph = new dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__/* .Graph */ .T({
444
+ multigraph: true,
445
+ compound: true
446
+ }).setGraph({
447
+ rankdir: dir,
448
+ nodesep: 50,
449
+ ranksep: 50,
450
+ marginx: 8,
451
+ marginy: 8
452
+ }).setDefaultEdgeLabel(function() {
453
+ return {};
454
+ });
455
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Old graph before copy", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph));
456
+ copy(node, graph, clusterGraph, node);
457
+ graph.setNode(node, {
458
+ clusterNode: true,
459
+ id: node,
460
+ clusterData: clusterDb.get(node).clusterData,
461
+ label: clusterDb.get(node).label,
462
+ graph: clusterGraph
463
+ });
464
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("New graph after copy node: (", node, ")", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(clusterGraph));
465
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Old graph after copy", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph));
466
+ } else {
467
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(
468
+ "Cluster ** ",
469
+ node,
470
+ " **not meeting the criteria !externalConnections:",
471
+ !clusterDb.get(node).externalConnections,
472
+ " no parent: ",
473
+ !graph.parent(node),
474
+ " children ",
475
+ graph.children(node) && graph.children(node).length > 0,
476
+ graph.children("D"),
477
+ depth
478
+ );
479
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug(clusterDb);
480
+ }
481
+ }
482
+ nodes = graph.nodes();
483
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("New list of nodes", nodes);
484
+ for (const node of nodes) {
485
+ const data = graph.node(node);
486
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn(" Now next level", node, data);
487
+ if (data?.clusterNode) {
488
+ extractor(data.graph, depth + 1);
489
+ }
490
+ }
491
+ }, "extractor");
492
+ var sorter = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((graph, nodes) => {
493
+ if (nodes.length === 0) {
494
+ return [];
495
+ }
496
+ let result = Object.assign([], nodes);
497
+ nodes.forEach((node) => {
498
+ const children = graph.children(node);
499
+ const sorted = sorter(graph, children);
500
+ result = [...result, ...sorted];
501
+ });
502
+ return result;
503
+ }, "sorter");
504
+ var sortNodesByHierarchy = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)((graph) => sorter(graph, graph.children()), "sortNodesByHierarchy");
505
+
506
+ // src/rendering-util/layout-algorithms/dagre/index.js
507
+ var recursiveRender = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => {
508
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Graph in recursive render:XAX", dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph), parentCluster);
509
+ const dir = graph.graph().rankdir;
510
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace("Dir in recursive render - dir:", dir);
511
+ const elem = _elem.insert("g").attr("class", "root");
512
+ if (!graph.nodes()) {
513
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("No nodes found for", graph);
514
+ } else {
515
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Recursive render XXX", graph.nodes());
516
+ }
517
+ if (graph.edges().length > 0) {
518
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Recursive edges", graph.edge(graph.edges()[0]));
519
+ }
520
+ const clusters = elem.insert("g").attr("class", "clusters");
521
+ const edgePaths = elem.insert("g").attr("class", "edgePaths");
522
+ const edgeLabels = elem.insert("g").attr("class", "edgeLabels");
523
+ const nodes = elem.insert("g").attr("class", "nodes");
524
+ await Promise.all(
525
+ graph.nodes().map(async function(v) {
526
+ const node = graph.node(v);
527
+ if (parentCluster !== void 0) {
528
+ const data = JSON.parse(JSON.stringify(parentCluster.clusterData));
529
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace(
530
+ "Setting data for parent cluster XXX\n Node.id = ",
531
+ v,
532
+ "\n data=",
533
+ data.height,
534
+ "\nParent cluster",
535
+ parentCluster.height
536
+ );
537
+ graph.setNode(parentCluster.id, data);
538
+ if (!graph.parent(v)) {
539
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace("Setting parent", v, parentCluster.id);
540
+ graph.setParent(v, parentCluster.id, data);
541
+ }
542
+ }
543
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("(Insert) Node XXX" + v + ": " + JSON.stringify(graph.node(v)));
544
+ if (node?.clusterNode) {
545
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Cluster identified XBX", v, node.width, graph.node(v));
546
+ const { ranksep, nodesep } = graph.graph();
547
+ node.graph.setGraph({
548
+ ...node.graph.graph(),
549
+ ranksep: ranksep + 25,
550
+ nodesep
551
+ });
552
+ const o = await recursiveRender(
553
+ nodes,
554
+ node.graph,
555
+ diagramType,
556
+ id,
557
+ graph.node(v),
558
+ siteConfig
559
+ );
560
+ const newEl = o.elem;
561
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .updateNodeBounds */ .lC)(node, newEl);
562
+ node.diff = o.diff || 0;
563
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
564
+ "New compound node after recursive render XAX",
565
+ v,
566
+ "width",
567
+ // node,
568
+ node.width,
569
+ "height",
570
+ node.height
571
+ // node.x,
572
+ // node.y
573
+ );
574
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .setNodeElem */ .U7)(newEl, node);
575
+ } else {
576
+ if (graph.children(v).length > 0) {
577
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace(
578
+ "Cluster - the non recursive path XBX",
579
+ v,
580
+ node.id,
581
+ node,
582
+ node.width,
583
+ "Graph:",
584
+ graph
585
+ );
586
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace(findNonClusterChild(node.id, graph));
587
+ clusterDb.set(node.id, { id: findNonClusterChild(node.id, graph), node });
588
+ } else {
589
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.trace("Node - the non recursive path XAX", v, nodes, graph.node(v), dir);
590
+ await (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertNode */ .on)(nodes, graph.node(v), { config: siteConfig, dir });
591
+ }
592
+ }
593
+ })
594
+ );
595
+ const processEdges = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)(async () => {
596
+ const edgePromises = graph.edges().map(async function(e) {
597
+ const edge = graph.edge(e.v, e.w, e.name);
598
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(e));
599
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": ", e, " ", JSON.stringify(graph.edge(e)));
600
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
601
+ "Fix",
602
+ clusterDb,
603
+ "ids:",
604
+ e.v,
605
+ e.w,
606
+ "Translating: ",
607
+ clusterDb.get(e.v),
608
+ clusterDb.get(e.w)
609
+ );
610
+ await (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertEdgeLabel */ .jP)(edgeLabels, edge);
611
+ });
612
+ await Promise.all(edgePromises);
613
+ }, "processEdges");
614
+ await processEdges();
615
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Graph before layout:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph)));
616
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("############################################# XXX");
617
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("### Layout ### XXX");
618
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("############################################# XXX");
619
+ (0,dagre_d3_es_src_dagre_index_js__WEBPACK_IMPORTED_MODULE_6__/* .layout */ .Zp)(graph);
620
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Graph after layout:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph)));
621
+ let diff = 0;
622
+ let { subGraphTitleTotalMargin } = (0,_chunk_I3FGKTZ5_mjs__WEBPACK_IMPORTED_MODULE_2__/* .getSubGraphTitleMargins */ .O)(siteConfig);
623
+ await Promise.all(
624
+ sortNodesByHierarchy(graph).map(async function(v) {
625
+ const node = graph.node(v);
626
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
627
+ "Position XBX => " + v + ": (" + node.x,
628
+ "," + node.y,
629
+ ") width: ",
630
+ node.width,
631
+ " height: ",
632
+ node.height
633
+ );
634
+ if (node?.clusterNode) {
635
+ node.y += subGraphTitleTotalMargin;
636
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
637
+ "A tainted cluster node XBX1",
638
+ v,
639
+ node.id,
640
+ node.width,
641
+ node.height,
642
+ node.x,
643
+ node.y,
644
+ graph.parent(v)
645
+ );
646
+ clusterDb.get(node.id).node = node;
647
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .positionNode */ .U_)(node);
648
+ } else {
649
+ if (graph.children(v).length > 0) {
650
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
651
+ "A pure cluster node XBX1",
652
+ v,
653
+ node.id,
654
+ node.x,
655
+ node.y,
656
+ node.width,
657
+ node.height,
658
+ graph.parent(v)
659
+ );
660
+ node.height += subGraphTitleTotalMargin;
661
+ graph.node(node.parentId);
662
+ const halfPadding = node?.padding / 2 || 0;
663
+ const labelHeight = node?.labelBBox?.height || 0;
664
+ const offsetY = labelHeight - halfPadding || 0;
665
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("OffsetY", offsetY, "labelHeight", labelHeight, "halfPadding", halfPadding);
666
+ await (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertCluster */ .U)(clusters, node);
667
+ clusterDb.get(node.id).node = node;
668
+ } else {
669
+ const parent = graph.node(node.parentId);
670
+ node.y += subGraphTitleTotalMargin / 2;
671
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(
672
+ "A regular node XBX1 - using the padding",
673
+ node.id,
674
+ "parent",
675
+ node.parentId,
676
+ node.width,
677
+ node.height,
678
+ node.x,
679
+ node.y,
680
+ "offsetY",
681
+ node.offsetY,
682
+ "parent",
683
+ parent,
684
+ parent?.offsetY,
685
+ node
686
+ );
687
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .positionNode */ .U_)(node);
688
+ }
689
+ }
690
+ })
691
+ );
692
+ graph.edges().forEach(function(e) {
693
+ const edge = graph.edge(e);
694
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info("Edge " + e.v + " -> " + e.w + ": " + JSON.stringify(edge), edge);
695
+ edge.points.forEach((point) => point.y += subGraphTitleTotalMargin / 2);
696
+ const startNode = graph.node(e.v);
697
+ var endNode = graph.node(e.w);
698
+ const paths = (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .insertEdge */ .Jo)(edgePaths, edge, clusterDb, diagramType, startNode, endNode, id);
699
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .positionEdgeLabel */ .T_)(edge, paths);
700
+ });
701
+ graph.nodes().forEach(function(v) {
702
+ const n = graph.node(v);
703
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.info(v, n.type, n.diff);
704
+ if (n.isGroup) {
705
+ diff = n.diff;
706
+ }
707
+ });
708
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Returning from recursive render XAX", elem, diff);
709
+ return { elem, diff };
710
+ }, "recursiveRender");
711
+ var render = /* @__PURE__ */ (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .__name */ .K2)(async (data4Layout, svg) => {
712
+ const graph = new dagre_d3_es_src_graphlib_index_js__WEBPACK_IMPORTED_MODULE_8__/* .Graph */ .T({
713
+ multigraph: true,
714
+ compound: true
715
+ }).setGraph({
716
+ rankdir: data4Layout.direction,
717
+ nodesep: data4Layout.config?.nodeSpacing || data4Layout.config?.flowchart?.nodeSpacing || data4Layout.nodeSpacing,
718
+ ranksep: data4Layout.config?.rankSpacing || data4Layout.config?.flowchart?.rankSpacing || data4Layout.rankSpacing,
719
+ marginx: 8,
720
+ marginy: 8
721
+ }).setDefaultEdgeLabel(function() {
722
+ return {};
723
+ });
724
+ const element = svg.select("g");
725
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .markers_default */ .g0)(element, data4Layout.markers, data4Layout.type, data4Layout.diagramId);
726
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .clear3 */ .nA)();
727
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .clear2 */ .gh)();
728
+ (0,_chunk_O5FTX4FK_mjs__WEBPACK_IMPORTED_MODULE_0__/* .clear */ .IU)();
729
+ clear4();
730
+ data4Layout.nodes.forEach((node) => {
731
+ graph.setNode(node.id, { ...node });
732
+ if (node.parentId) {
733
+ graph.setParent(node.id, node.parentId);
734
+ }
735
+ });
736
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.debug("Edges:", data4Layout.edges);
737
+ data4Layout.edges.forEach((edge) => {
738
+ if (edge.start === edge.end) {
739
+ const nodeId = edge.start;
740
+ const specialId1 = nodeId + "---" + nodeId + "---1";
741
+ const specialId2 = nodeId + "---" + nodeId + "---2";
742
+ const node = graph.node(nodeId);
743
+ graph.setNode(specialId1, {
744
+ domId: specialId1,
745
+ id: specialId1,
746
+ parentId: node.parentId,
747
+ labelStyle: "",
748
+ label: "",
749
+ padding: 0,
750
+ shape: "labelRect",
751
+ // shape: 'rect',
752
+ style: "",
753
+ width: 10,
754
+ height: 10
755
+ });
756
+ graph.setParent(specialId1, node.parentId);
757
+ graph.setNode(specialId2, {
758
+ domId: specialId2,
759
+ id: specialId2,
760
+ parentId: node.parentId,
761
+ labelStyle: "",
762
+ padding: 0,
763
+ // shape: 'rect',
764
+ shape: "labelRect",
765
+ label: "",
766
+ style: "",
767
+ width: 10,
768
+ height: 10
769
+ });
770
+ graph.setParent(specialId2, node.parentId);
771
+ const edge1 = structuredClone(edge);
772
+ const edgeMid = structuredClone(edge);
773
+ const edge2 = structuredClone(edge);
774
+ edge1.label = "";
775
+ edge1.arrowTypeEnd = "none";
776
+ edge1.id = nodeId + "-cyclic-special-1";
777
+ edgeMid.arrowTypeEnd = "none";
778
+ edgeMid.id = nodeId + "-cyclic-special-mid";
779
+ edge2.label = "";
780
+ if (node.isGroup) {
781
+ edge1.fromCluster = nodeId;
782
+ edge2.toCluster = nodeId;
783
+ }
784
+ edge2.id = nodeId + "-cyclic-special-2";
785
+ graph.setEdge(nodeId, specialId1, edge1, nodeId + "-cyclic-special-0");
786
+ graph.setEdge(specialId1, specialId2, edgeMid, nodeId + "-cyclic-special-1");
787
+ graph.setEdge(specialId2, nodeId, edge2, nodeId + "-cyc<lic-special-2");
788
+ } else {
789
+ graph.setEdge(edge.start, edge.end, { ...edge }, edge.id);
790
+ }
791
+ });
792
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Graph at first:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph)));
793
+ adjustClustersAndEdges(graph);
794
+ _chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm.warn("Graph after XAX:", JSON.stringify(dagre_d3_es_src_graphlib_json_js__WEBPACK_IMPORTED_MODULE_7__/* .write */ .M(graph)));
795
+ const siteConfig = (0,_chunk_S24QXQKS_mjs__WEBPACK_IMPORTED_MODULE_5__/* .getConfig2 */ .D7)();
796
+ await recursiveRender(
797
+ element,
798
+ graph,
799
+ data4Layout.type,
800
+ data4Layout.diagramId,
801
+ void 0,
802
+ siteConfig
803
+ );
804
+ }, "render");
805
+
806
+
807
+
808
+ /***/ })
809
+
810
+ };
811
+ ;