local-operator-ui 0.9.2 → 0.10.1
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.
- package/out/main/index.jsc +0 -0
- package/out/preload/index.jsc +0 -0
- package/out/renderer/assets/_basePickBy-B5zFlqYH.js +195 -0
- package/out/renderer/assets/_baseUniq-BIR69pjE.js +835 -0
- package/out/renderer/assets/arc-vi2cZvnf.js +131 -0
- package/out/renderer/assets/architectureDiagram-IEHRJDOE-DChvv_dX.js +8653 -0
- package/out/renderer/assets/blockDiagram-JOT3LUYC-CEFfNRQ0.js +3585 -0
- package/out/renderer/assets/c4Diagram-VJAJSXHY-CMcq-0y4.js +2487 -0
- package/out/renderer/assets/channel-DxrUxepG.js +7 -0
- package/out/renderer/assets/chunk-4BMEZGHF-CLG9UTTy.js +16 -0
- package/out/renderer/assets/chunk-A2AXSNBT-OvwzTsRA.js +1827 -0
- package/out/renderer/assets/chunk-AEK57VVT-BNwaQxQ1.js +1953 -0
- package/out/renderer/assets/chunk-D6G4REZN-9hk0KigE.js +108 -0
- package/out/renderer/assets/chunk-RZ5BOZE2-BAS8OFkl.js +34 -0
- package/out/renderer/assets/chunk-XZIHB7SX-BBBrevk8.js +19 -0
- package/out/renderer/assets/classDiagram-GIVACNV2-B26ENMdv.js +21 -0
- package/out/renderer/assets/classDiagram-v2-COTLJTTW-B26ENMdv.js +21 -0
- package/out/renderer/assets/clone-BnNWUSJZ.js +8 -0
- package/out/renderer/assets/cytoscape.esm-C0AOj4uS.js +30062 -0
- package/out/renderer/assets/dagre-OKDRZEBW-CrmhwUSU.js +695 -0
- package/out/renderer/assets/diagram-SSKATNLV-BdqHkj-I.js +304 -0
- package/out/renderer/assets/diagram-VNBRO52H-CKrL77xr.js +193 -0
- package/out/renderer/assets/erDiagram-Q7BY3M3F-Tt0aLhGI.js +1160 -0
- package/out/renderer/assets/flowDiagram-4HSFHLVR-CcH5VigW.js +2324 -0
- package/out/renderer/assets/{fonts-Bx8fKQfu.js → fonts-Dt5cFjOU.js} +178 -178
- package/out/renderer/assets/ganttDiagram-APWFNJXF-Bi0xeYEe.js +2500 -0
- package/out/renderer/assets/gitGraphDiagram-7IBYFJ6S-CGwSvQwC.js +1204 -0
- package/out/renderer/assets/graph-Db6INjYz.js +424 -0
- package/out/renderer/assets/{index-DtFlp8rf.js → index-Bfd-2Oc6.js} +2 -2
- package/out/renderer/assets/{index-Cf8ixUbJ.js → index-CtRI8g3Q.js} +104853 -76337
- package/out/renderer/assets/{index-n_d5-ePx.js → index-DiYn4yiw.js} +2 -2
- package/out/renderer/assets/{index-0vP6mKPB.css → index-Dtwjgp5_.css} +9 -0
- package/out/renderer/assets/infoDiagram-PH2N3AL5-Ge-A0ZLx.js +33 -0
- package/out/renderer/assets/{installer-Cn81GyOR.js → installer-lVyomCxI.js} +1 -1
- package/out/renderer/assets/journeyDiagram-U35MCT3I-D_NUNOvR.js +1199 -0
- package/out/renderer/assets/kanban-definition-NDS4AKOZ-klQOxYYr.js +1046 -0
- package/out/renderer/assets/layout-s692bBPh.js +2060 -0
- package/out/renderer/assets/mindmap-definition-ALO5MXBD-CTAoaran.js +5836 -0
- package/out/renderer/assets/pieDiagram-IB7DONF6-C2fGlnMA.js +239 -0
- package/out/renderer/assets/quadrantDiagram-7GDLP6J5-BHT2tkE6.js +1340 -0
- package/out/renderer/assets/radar-MK3ICKWK-DgJ2QYDL.js +16935 -0
- package/out/renderer/assets/requirementDiagram-KVF5MWMF-PPbRo3RD.js +1163 -0
- package/out/renderer/assets/sankeyDiagram-QLVOVGJD-DqyHobM6.js +1201 -0
- package/out/renderer/assets/sequenceDiagram-X6HHIX6F-BLS88slX.js +3415 -0
- package/out/renderer/assets/stateDiagram-DGXRK772-Dy2hiNJa.js +467 -0
- package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-DjXWM0hu.js +21 -0
- package/out/renderer/assets/timeline-definition-BDJGKUSR-lE2dNCpN.js +1223 -0
- package/out/renderer/assets/xychartDiagram-VJFVF3MP-DfYmDcNz.js +1800 -0
- package/out/renderer/index.html +5 -5
- package/out/renderer/installer.html +2 -2
- package/package.json +4 -1
|
@@ -0,0 +1,424 @@
|
|
|
1
|
+
import { aO as baseRest, aP as isArrayLikeObject, aQ as constant, aR as isFunction, aS as isEmpty } from "./index-CtRI8g3Q.js";
|
|
2
|
+
import { a as baseUniq, c as baseFlatten, k as keys, f as filter, d as forEach, i as isUndefined, v as values, r as reduce } from "./_baseUniq-BIR69pjE.js";
|
|
3
|
+
var union = baseRest(function(arrays) {
|
|
4
|
+
return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));
|
|
5
|
+
});
|
|
6
|
+
var DEFAULT_EDGE_NAME = "\0";
|
|
7
|
+
var GRAPH_NODE = "\0";
|
|
8
|
+
var EDGE_KEY_DELIM = "";
|
|
9
|
+
class Graph {
|
|
10
|
+
constructor(opts = {}) {
|
|
11
|
+
this._isDirected = Object.prototype.hasOwnProperty.call(opts, "directed") ? opts.directed : true;
|
|
12
|
+
this._isMultigraph = Object.prototype.hasOwnProperty.call(opts, "multigraph") ? opts.multigraph : false;
|
|
13
|
+
this._isCompound = Object.prototype.hasOwnProperty.call(opts, "compound") ? opts.compound : false;
|
|
14
|
+
this._label = void 0;
|
|
15
|
+
this._defaultNodeLabelFn = constant(void 0);
|
|
16
|
+
this._defaultEdgeLabelFn = constant(void 0);
|
|
17
|
+
this._nodes = {};
|
|
18
|
+
if (this._isCompound) {
|
|
19
|
+
this._parent = {};
|
|
20
|
+
this._children = {};
|
|
21
|
+
this._children[GRAPH_NODE] = {};
|
|
22
|
+
}
|
|
23
|
+
this._in = {};
|
|
24
|
+
this._preds = {};
|
|
25
|
+
this._out = {};
|
|
26
|
+
this._sucs = {};
|
|
27
|
+
this._edgeObjs = {};
|
|
28
|
+
this._edgeLabels = {};
|
|
29
|
+
}
|
|
30
|
+
/* === Graph functions ========= */
|
|
31
|
+
isDirected() {
|
|
32
|
+
return this._isDirected;
|
|
33
|
+
}
|
|
34
|
+
isMultigraph() {
|
|
35
|
+
return this._isMultigraph;
|
|
36
|
+
}
|
|
37
|
+
isCompound() {
|
|
38
|
+
return this._isCompound;
|
|
39
|
+
}
|
|
40
|
+
setGraph(label) {
|
|
41
|
+
this._label = label;
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
graph() {
|
|
45
|
+
return this._label;
|
|
46
|
+
}
|
|
47
|
+
/* === Node functions ========== */
|
|
48
|
+
setDefaultNodeLabel(newDefault) {
|
|
49
|
+
if (!isFunction(newDefault)) {
|
|
50
|
+
newDefault = constant(newDefault);
|
|
51
|
+
}
|
|
52
|
+
this._defaultNodeLabelFn = newDefault;
|
|
53
|
+
return this;
|
|
54
|
+
}
|
|
55
|
+
nodeCount() {
|
|
56
|
+
return this._nodeCount;
|
|
57
|
+
}
|
|
58
|
+
nodes() {
|
|
59
|
+
return keys(this._nodes);
|
|
60
|
+
}
|
|
61
|
+
sources() {
|
|
62
|
+
var self = this;
|
|
63
|
+
return filter(this.nodes(), function(v) {
|
|
64
|
+
return isEmpty(self._in[v]);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
sinks() {
|
|
68
|
+
var self = this;
|
|
69
|
+
return filter(this.nodes(), function(v) {
|
|
70
|
+
return isEmpty(self._out[v]);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
setNodes(vs, value) {
|
|
74
|
+
var args = arguments;
|
|
75
|
+
var self = this;
|
|
76
|
+
forEach(vs, function(v) {
|
|
77
|
+
if (args.length > 1) {
|
|
78
|
+
self.setNode(v, value);
|
|
79
|
+
} else {
|
|
80
|
+
self.setNode(v);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
return this;
|
|
84
|
+
}
|
|
85
|
+
setNode(v, value) {
|
|
86
|
+
if (Object.prototype.hasOwnProperty.call(this._nodes, v)) {
|
|
87
|
+
if (arguments.length > 1) {
|
|
88
|
+
this._nodes[v] = value;
|
|
89
|
+
}
|
|
90
|
+
return this;
|
|
91
|
+
}
|
|
92
|
+
this._nodes[v] = arguments.length > 1 ? value : this._defaultNodeLabelFn(v);
|
|
93
|
+
if (this._isCompound) {
|
|
94
|
+
this._parent[v] = GRAPH_NODE;
|
|
95
|
+
this._children[v] = {};
|
|
96
|
+
this._children[GRAPH_NODE][v] = true;
|
|
97
|
+
}
|
|
98
|
+
this._in[v] = {};
|
|
99
|
+
this._preds[v] = {};
|
|
100
|
+
this._out[v] = {};
|
|
101
|
+
this._sucs[v] = {};
|
|
102
|
+
++this._nodeCount;
|
|
103
|
+
return this;
|
|
104
|
+
}
|
|
105
|
+
node(v) {
|
|
106
|
+
return this._nodes[v];
|
|
107
|
+
}
|
|
108
|
+
hasNode(v) {
|
|
109
|
+
return Object.prototype.hasOwnProperty.call(this._nodes, v);
|
|
110
|
+
}
|
|
111
|
+
removeNode(v) {
|
|
112
|
+
if (Object.prototype.hasOwnProperty.call(this._nodes, v)) {
|
|
113
|
+
var removeEdge = (e) => this.removeEdge(this._edgeObjs[e]);
|
|
114
|
+
delete this._nodes[v];
|
|
115
|
+
if (this._isCompound) {
|
|
116
|
+
this._removeFromParentsChildList(v);
|
|
117
|
+
delete this._parent[v];
|
|
118
|
+
forEach(this.children(v), (child) => {
|
|
119
|
+
this.setParent(child);
|
|
120
|
+
});
|
|
121
|
+
delete this._children[v];
|
|
122
|
+
}
|
|
123
|
+
forEach(keys(this._in[v]), removeEdge);
|
|
124
|
+
delete this._in[v];
|
|
125
|
+
delete this._preds[v];
|
|
126
|
+
forEach(keys(this._out[v]), removeEdge);
|
|
127
|
+
delete this._out[v];
|
|
128
|
+
delete this._sucs[v];
|
|
129
|
+
--this._nodeCount;
|
|
130
|
+
}
|
|
131
|
+
return this;
|
|
132
|
+
}
|
|
133
|
+
setParent(v, parent) {
|
|
134
|
+
if (!this._isCompound) {
|
|
135
|
+
throw new Error("Cannot set parent in a non-compound graph");
|
|
136
|
+
}
|
|
137
|
+
if (isUndefined(parent)) {
|
|
138
|
+
parent = GRAPH_NODE;
|
|
139
|
+
} else {
|
|
140
|
+
parent += "";
|
|
141
|
+
for (var ancestor = parent; !isUndefined(ancestor); ancestor = this.parent(ancestor)) {
|
|
142
|
+
if (ancestor === v) {
|
|
143
|
+
throw new Error("Setting " + parent + " as parent of " + v + " would create a cycle");
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
this.setNode(parent);
|
|
147
|
+
}
|
|
148
|
+
this.setNode(v);
|
|
149
|
+
this._removeFromParentsChildList(v);
|
|
150
|
+
this._parent[v] = parent;
|
|
151
|
+
this._children[parent][v] = true;
|
|
152
|
+
return this;
|
|
153
|
+
}
|
|
154
|
+
_removeFromParentsChildList(v) {
|
|
155
|
+
delete this._children[this._parent[v]][v];
|
|
156
|
+
}
|
|
157
|
+
parent(v) {
|
|
158
|
+
if (this._isCompound) {
|
|
159
|
+
var parent = this._parent[v];
|
|
160
|
+
if (parent !== GRAPH_NODE) {
|
|
161
|
+
return parent;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
children(v) {
|
|
166
|
+
if (isUndefined(v)) {
|
|
167
|
+
v = GRAPH_NODE;
|
|
168
|
+
}
|
|
169
|
+
if (this._isCompound) {
|
|
170
|
+
var children = this._children[v];
|
|
171
|
+
if (children) {
|
|
172
|
+
return keys(children);
|
|
173
|
+
}
|
|
174
|
+
} else if (v === GRAPH_NODE) {
|
|
175
|
+
return this.nodes();
|
|
176
|
+
} else if (this.hasNode(v)) {
|
|
177
|
+
return [];
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
predecessors(v) {
|
|
181
|
+
var predsV = this._preds[v];
|
|
182
|
+
if (predsV) {
|
|
183
|
+
return keys(predsV);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
successors(v) {
|
|
187
|
+
var sucsV = this._sucs[v];
|
|
188
|
+
if (sucsV) {
|
|
189
|
+
return keys(sucsV);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
neighbors(v) {
|
|
193
|
+
var preds = this.predecessors(v);
|
|
194
|
+
if (preds) {
|
|
195
|
+
return union(preds, this.successors(v));
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
isLeaf(v) {
|
|
199
|
+
var neighbors;
|
|
200
|
+
if (this.isDirected()) {
|
|
201
|
+
neighbors = this.successors(v);
|
|
202
|
+
} else {
|
|
203
|
+
neighbors = this.neighbors(v);
|
|
204
|
+
}
|
|
205
|
+
return neighbors.length === 0;
|
|
206
|
+
}
|
|
207
|
+
filterNodes(filter2) {
|
|
208
|
+
var copy = new this.constructor({
|
|
209
|
+
directed: this._isDirected,
|
|
210
|
+
multigraph: this._isMultigraph,
|
|
211
|
+
compound: this._isCompound
|
|
212
|
+
});
|
|
213
|
+
copy.setGraph(this.graph());
|
|
214
|
+
var self = this;
|
|
215
|
+
forEach(this._nodes, function(value, v) {
|
|
216
|
+
if (filter2(v)) {
|
|
217
|
+
copy.setNode(v, value);
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
forEach(this._edgeObjs, function(e) {
|
|
221
|
+
if (copy.hasNode(e.v) && copy.hasNode(e.w)) {
|
|
222
|
+
copy.setEdge(e, self.edge(e));
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
var parents = {};
|
|
226
|
+
function findParent(v) {
|
|
227
|
+
var parent = self.parent(v);
|
|
228
|
+
if (parent === void 0 || copy.hasNode(parent)) {
|
|
229
|
+
parents[v] = parent;
|
|
230
|
+
return parent;
|
|
231
|
+
} else if (parent in parents) {
|
|
232
|
+
return parents[parent];
|
|
233
|
+
} else {
|
|
234
|
+
return findParent(parent);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
if (this._isCompound) {
|
|
238
|
+
forEach(copy.nodes(), function(v) {
|
|
239
|
+
copy.setParent(v, findParent(v));
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
return copy;
|
|
243
|
+
}
|
|
244
|
+
/* === Edge functions ========== */
|
|
245
|
+
setDefaultEdgeLabel(newDefault) {
|
|
246
|
+
if (!isFunction(newDefault)) {
|
|
247
|
+
newDefault = constant(newDefault);
|
|
248
|
+
}
|
|
249
|
+
this._defaultEdgeLabelFn = newDefault;
|
|
250
|
+
return this;
|
|
251
|
+
}
|
|
252
|
+
edgeCount() {
|
|
253
|
+
return this._edgeCount;
|
|
254
|
+
}
|
|
255
|
+
edges() {
|
|
256
|
+
return values(this._edgeObjs);
|
|
257
|
+
}
|
|
258
|
+
setPath(vs, value) {
|
|
259
|
+
var self = this;
|
|
260
|
+
var args = arguments;
|
|
261
|
+
reduce(vs, function(v, w) {
|
|
262
|
+
if (args.length > 1) {
|
|
263
|
+
self.setEdge(v, w, value);
|
|
264
|
+
} else {
|
|
265
|
+
self.setEdge(v, w);
|
|
266
|
+
}
|
|
267
|
+
return w;
|
|
268
|
+
});
|
|
269
|
+
return this;
|
|
270
|
+
}
|
|
271
|
+
/*
|
|
272
|
+
* setEdge(v, w, [value, [name]])
|
|
273
|
+
* setEdge({ v, w, [name] }, [value])
|
|
274
|
+
*/
|
|
275
|
+
setEdge() {
|
|
276
|
+
var v, w, name, value;
|
|
277
|
+
var valueSpecified = false;
|
|
278
|
+
var arg0 = arguments[0];
|
|
279
|
+
if (typeof arg0 === "object" && arg0 !== null && "v" in arg0) {
|
|
280
|
+
v = arg0.v;
|
|
281
|
+
w = arg0.w;
|
|
282
|
+
name = arg0.name;
|
|
283
|
+
if (arguments.length === 2) {
|
|
284
|
+
value = arguments[1];
|
|
285
|
+
valueSpecified = true;
|
|
286
|
+
}
|
|
287
|
+
} else {
|
|
288
|
+
v = arg0;
|
|
289
|
+
w = arguments[1];
|
|
290
|
+
name = arguments[3];
|
|
291
|
+
if (arguments.length > 2) {
|
|
292
|
+
value = arguments[2];
|
|
293
|
+
valueSpecified = true;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
v = "" + v;
|
|
297
|
+
w = "" + w;
|
|
298
|
+
if (!isUndefined(name)) {
|
|
299
|
+
name = "" + name;
|
|
300
|
+
}
|
|
301
|
+
var e = edgeArgsToId(this._isDirected, v, w, name);
|
|
302
|
+
if (Object.prototype.hasOwnProperty.call(this._edgeLabels, e)) {
|
|
303
|
+
if (valueSpecified) {
|
|
304
|
+
this._edgeLabels[e] = value;
|
|
305
|
+
}
|
|
306
|
+
return this;
|
|
307
|
+
}
|
|
308
|
+
if (!isUndefined(name) && !this._isMultigraph) {
|
|
309
|
+
throw new Error("Cannot set a named edge when isMultigraph = false");
|
|
310
|
+
}
|
|
311
|
+
this.setNode(v);
|
|
312
|
+
this.setNode(w);
|
|
313
|
+
this._edgeLabels[e] = valueSpecified ? value : this._defaultEdgeLabelFn(v, w, name);
|
|
314
|
+
var edgeObj = edgeArgsToObj(this._isDirected, v, w, name);
|
|
315
|
+
v = edgeObj.v;
|
|
316
|
+
w = edgeObj.w;
|
|
317
|
+
Object.freeze(edgeObj);
|
|
318
|
+
this._edgeObjs[e] = edgeObj;
|
|
319
|
+
incrementOrInitEntry(this._preds[w], v);
|
|
320
|
+
incrementOrInitEntry(this._sucs[v], w);
|
|
321
|
+
this._in[w][e] = edgeObj;
|
|
322
|
+
this._out[v][e] = edgeObj;
|
|
323
|
+
this._edgeCount++;
|
|
324
|
+
return this;
|
|
325
|
+
}
|
|
326
|
+
edge(v, w, name) {
|
|
327
|
+
var e = arguments.length === 1 ? edgeObjToId(this._isDirected, arguments[0]) : edgeArgsToId(this._isDirected, v, w, name);
|
|
328
|
+
return this._edgeLabels[e];
|
|
329
|
+
}
|
|
330
|
+
hasEdge(v, w, name) {
|
|
331
|
+
var e = arguments.length === 1 ? edgeObjToId(this._isDirected, arguments[0]) : edgeArgsToId(this._isDirected, v, w, name);
|
|
332
|
+
return Object.prototype.hasOwnProperty.call(this._edgeLabels, e);
|
|
333
|
+
}
|
|
334
|
+
removeEdge(v, w, name) {
|
|
335
|
+
var e = arguments.length === 1 ? edgeObjToId(this._isDirected, arguments[0]) : edgeArgsToId(this._isDirected, v, w, name);
|
|
336
|
+
var edge = this._edgeObjs[e];
|
|
337
|
+
if (edge) {
|
|
338
|
+
v = edge.v;
|
|
339
|
+
w = edge.w;
|
|
340
|
+
delete this._edgeLabels[e];
|
|
341
|
+
delete this._edgeObjs[e];
|
|
342
|
+
decrementOrRemoveEntry(this._preds[w], v);
|
|
343
|
+
decrementOrRemoveEntry(this._sucs[v], w);
|
|
344
|
+
delete this._in[w][e];
|
|
345
|
+
delete this._out[v][e];
|
|
346
|
+
this._edgeCount--;
|
|
347
|
+
}
|
|
348
|
+
return this;
|
|
349
|
+
}
|
|
350
|
+
inEdges(v, u) {
|
|
351
|
+
var inV = this._in[v];
|
|
352
|
+
if (inV) {
|
|
353
|
+
var edges = values(inV);
|
|
354
|
+
if (!u) {
|
|
355
|
+
return edges;
|
|
356
|
+
}
|
|
357
|
+
return filter(edges, function(edge) {
|
|
358
|
+
return edge.v === u;
|
|
359
|
+
});
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
outEdges(v, w) {
|
|
363
|
+
var outV = this._out[v];
|
|
364
|
+
if (outV) {
|
|
365
|
+
var edges = values(outV);
|
|
366
|
+
if (!w) {
|
|
367
|
+
return edges;
|
|
368
|
+
}
|
|
369
|
+
return filter(edges, function(edge) {
|
|
370
|
+
return edge.w === w;
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
nodeEdges(v, w) {
|
|
375
|
+
var inEdges = this.inEdges(v, w);
|
|
376
|
+
if (inEdges) {
|
|
377
|
+
return inEdges.concat(this.outEdges(v, w));
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
Graph.prototype._nodeCount = 0;
|
|
382
|
+
Graph.prototype._edgeCount = 0;
|
|
383
|
+
function incrementOrInitEntry(map, k) {
|
|
384
|
+
if (map[k]) {
|
|
385
|
+
map[k]++;
|
|
386
|
+
} else {
|
|
387
|
+
map[k] = 1;
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
function decrementOrRemoveEntry(map, k) {
|
|
391
|
+
if (!--map[k]) {
|
|
392
|
+
delete map[k];
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
function edgeArgsToId(isDirected, v_, w_, name) {
|
|
396
|
+
var v = "" + v_;
|
|
397
|
+
var w = "" + w_;
|
|
398
|
+
if (!isDirected && v > w) {
|
|
399
|
+
var tmp = v;
|
|
400
|
+
v = w;
|
|
401
|
+
w = tmp;
|
|
402
|
+
}
|
|
403
|
+
return v + EDGE_KEY_DELIM + w + EDGE_KEY_DELIM + (isUndefined(name) ? DEFAULT_EDGE_NAME : name);
|
|
404
|
+
}
|
|
405
|
+
function edgeArgsToObj(isDirected, v_, w_, name) {
|
|
406
|
+
var v = "" + v_;
|
|
407
|
+
var w = "" + w_;
|
|
408
|
+
if (!isDirected && v > w) {
|
|
409
|
+
var tmp = v;
|
|
410
|
+
v = w;
|
|
411
|
+
w = tmp;
|
|
412
|
+
}
|
|
413
|
+
var edgeObj = { v, w };
|
|
414
|
+
if (name) {
|
|
415
|
+
edgeObj.name = name;
|
|
416
|
+
}
|
|
417
|
+
return edgeObj;
|
|
418
|
+
}
|
|
419
|
+
function edgeObjToId(isDirected, edgeObj) {
|
|
420
|
+
return edgeArgsToId(isDirected, edgeObj.v, edgeObj.w, edgeObj.name);
|
|
421
|
+
}
|
|
422
|
+
export {
|
|
423
|
+
Graph as G
|
|
424
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "./fonts-
|
|
1
|
+
import { at as LRParser, au as ExternalTokenizer, av as LocalTokenGroup, aw as styleTags, ax as ContextTracker, ay as tags, az as LRLanguage, aA as snippetCompletion, aB as LanguageSupport, aC as ifNotIn, aD as completeFromList, aE as indentNodeProp, aF as foldNodeProp, aG as continuedIndent, aH as delimitedIndent, aI as flatIndent, aJ as foldInside, aK as syntaxTree, aL as NodeWeakMap, aM as IterMode } from "./index-CtRI8g3Q.js";
|
|
2
|
+
import "./fonts-Dt5cFjOU.js";
|
|
3
3
|
const insertedSemi = 177, space$1 = 179, identifier = 184, String = 12, closeParen$1 = 13, Number = 17, Rune = 20, closeBrace$1 = 25, closeBracket = 53, IncDecOp = 95, _return = 142, _break = 144, _continue = 145, fallthrough = 148;
|
|
4
4
|
const newline = 10, carriageReturn = 13, space = 32, tab = 9, slash = 47, closeParen = 41, closeBrace = 125;
|
|
5
5
|
const semicolon = new ExternalTokenizer((input, stack) => {
|