@hpcc-js/util 2.53.0 → 3.1.0

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 (126) hide show
  1. package/dist/index.js +1 -2590
  2. package/dist/index.js.map +7 -1
  3. package/package.json +27 -31
  4. package/src/__package__.ts +1 -1
  5. package/src/array.ts +1 -2
  6. package/src/cache.ts +1 -1
  7. package/src/debounce.ts +4 -4
  8. package/src/dispatch.ts +5 -5
  9. package/src/graph2.ts +1 -1
  10. package/src/index.ts +21 -21
  11. package/src/logging.ts +2 -2
  12. package/src/saxParser.ts +4 -4
  13. package/src/stateful.ts +4 -4
  14. package/src/url.ts +1 -1
  15. package/types/__package__.d.ts +1 -2
  16. package/types/array.d.ts +0 -1
  17. package/types/cache.d.ts +0 -1
  18. package/types/debounce.d.ts +0 -1
  19. package/types/dictionary.d.ts +0 -1
  20. package/types/dispatch.d.ts +1 -2
  21. package/types/esp.d.ts +0 -1
  22. package/types/graph.d.ts +0 -1
  23. package/types/graph2.d.ts +0 -1
  24. package/types/hashSum.d.ts +0 -1
  25. package/types/immutable.d.ts +0 -1
  26. package/types/index.d.ts +21 -22
  27. package/types/logging.d.ts +0 -1
  28. package/types/math.d.ts +0 -1
  29. package/types/object.d.ts +0 -1
  30. package/types/observer.d.ts +0 -1
  31. package/types/platform.d.ts +0 -1
  32. package/types/saxParser.d.ts +4 -5
  33. package/types/stack.d.ts +0 -1
  34. package/types/stateful.d.ts +1 -2
  35. package/types/string.d.ts +0 -1
  36. package/types/url.d.ts +0 -1
  37. package/dist/index.min.js +0 -2
  38. package/dist/index.min.js.map +0 -1
  39. package/lib-es6/__package__.js +0 -4
  40. package/lib-es6/__package__.js.map +0 -1
  41. package/lib-es6/array.js +0 -85
  42. package/lib-es6/array.js.map +0 -1
  43. package/lib-es6/cache.js +0 -61
  44. package/lib-es6/cache.js.map +0 -1
  45. package/lib-es6/debounce.js +0 -86
  46. package/lib-es6/debounce.js.map +0 -1
  47. package/lib-es6/dictionary.js +0 -62
  48. package/lib-es6/dictionary.js.map +0 -1
  49. package/lib-es6/dispatch.js +0 -102
  50. package/lib-es6/dispatch.js.map +0 -1
  51. package/lib-es6/esp.js +0 -33
  52. package/lib-es6/esp.js.map +0 -1
  53. package/lib-es6/graph.js +0 -349
  54. package/lib-es6/graph.js.map +0 -1
  55. package/lib-es6/graph2.js +0 -619
  56. package/lib-es6/graph2.js.map +0 -1
  57. package/lib-es6/hashSum.js +0 -50
  58. package/lib-es6/hashSum.js.map +0 -1
  59. package/lib-es6/immutable.js +0 -148
  60. package/lib-es6/immutable.js.map +0 -1
  61. package/lib-es6/index.js +0 -22
  62. package/lib-es6/index.js.map +0 -1
  63. package/lib-es6/logging.js +0 -179
  64. package/lib-es6/logging.js.map +0 -1
  65. package/lib-es6/math.js +0 -91
  66. package/lib-es6/math.js.map +0 -1
  67. package/lib-es6/object.js +0 -122
  68. package/lib-es6/object.js.map +0 -1
  69. package/lib-es6/observer.js +0 -80
  70. package/lib-es6/observer.js.map +0 -1
  71. package/lib-es6/platform.js +0 -18
  72. package/lib-es6/platform.js.map +0 -1
  73. package/lib-es6/saxParser.js +0 -126
  74. package/lib-es6/saxParser.js.map +0 -1
  75. package/lib-es6/stack.js +0 -42
  76. package/lib-es6/stack.js.map +0 -1
  77. package/lib-es6/stateful.js +0 -171
  78. package/lib-es6/stateful.js.map +0 -1
  79. package/lib-es6/string.js +0 -23
  80. package/lib-es6/string.js.map +0 -1
  81. package/lib-es6/url.js +0 -33
  82. package/lib-es6/url.js.map +0 -1
  83. package/types/__package__.d.ts.map +0 -1
  84. package/types/array.d.ts.map +0 -1
  85. package/types/cache.d.ts.map +0 -1
  86. package/types/debounce.d.ts.map +0 -1
  87. package/types/dictionary.d.ts.map +0 -1
  88. package/types/dispatch.d.ts.map +0 -1
  89. package/types/esp.d.ts.map +0 -1
  90. package/types/graph.d.ts.map +0 -1
  91. package/types/graph2.d.ts.map +0 -1
  92. package/types/hashSum.d.ts.map +0 -1
  93. package/types/immutable.d.ts.map +0 -1
  94. package/types/index.d.ts.map +0 -1
  95. package/types/logging.d.ts.map +0 -1
  96. package/types/math.d.ts.map +0 -1
  97. package/types/object.d.ts.map +0 -1
  98. package/types/observer.d.ts.map +0 -1
  99. package/types/platform.d.ts.map +0 -1
  100. package/types/saxParser.d.ts.map +0 -1
  101. package/types/stack.d.ts.map +0 -1
  102. package/types/stateful.d.ts.map +0 -1
  103. package/types/string.d.ts.map +0 -1
  104. package/types/url.d.ts.map +0 -1
  105. package/types-3.4/__package__.d.ts +0 -4
  106. package/types-3.4/array.d.ts +0 -14
  107. package/types-3.4/cache.d.ts +0 -21
  108. package/types-3.4/debounce.d.ts +0 -13
  109. package/types-3.4/dictionary.d.ts +0 -21
  110. package/types-3.4/dispatch.d.ts +0 -27
  111. package/types-3.4/esp.d.ts +0 -2
  112. package/types-3.4/graph.d.ts +0 -74
  113. package/types-3.4/graph2.d.ts +0 -112
  114. package/types-3.4/hashSum.d.ts +0 -2
  115. package/types-3.4/immutable.d.ts +0 -4
  116. package/types-3.4/index.d.ts +0 -22
  117. package/types-3.4/logging.d.ts +0 -58
  118. package/types-3.4/math.d.ts +0 -71
  119. package/types-3.4/object.d.ts +0 -52
  120. package/types-3.4/observer.d.ts +0 -19
  121. package/types-3.4/platform.d.ts +0 -6
  122. package/types-3.4/saxParser.d.ts +0 -29
  123. package/types-3.4/stack.d.ts +0 -29
  124. package/types-3.4/stateful.d.ts +0 -34
  125. package/types-3.4/string.d.ts +0 -3
  126. package/types-3.4/url.d.ts +0 -3
@@ -1 +0,0 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
package/lib-es6/graph2.js DELETED
@@ -1,619 +0,0 @@
1
- import { __extends, __spreadArray } from "tslib";
2
- import { compare2 } from "./array";
3
- var GraphItem = /** @class */ (function () {
4
- function GraphItem(g, _) {
5
- this._graph = g;
6
- this._ = _;
7
- }
8
- GraphItem.prototype.id = function () {
9
- return this._graph.id(this._);
10
- };
11
- return GraphItem;
12
- }());
13
- var ChildGraphItem = /** @class */ (function (_super) {
14
- __extends(ChildGraphItem, _super);
15
- function ChildGraphItem(g, _) {
16
- return _super.call(this, g, _) || this;
17
- }
18
- ChildGraphItem.prototype.clearParent = function () {
19
- if (this._parent) {
20
- this._parent.removeChild(this);
21
- delete this._parent;
22
- }
23
- return this;
24
- };
25
- ChildGraphItem.prototype.parent = function (_) {
26
- if (arguments.length === 0)
27
- return this._parent;
28
- if (this._parent !== _) {
29
- if (this._parent) {
30
- this._parent.removeChild(this);
31
- }
32
- this._parent = _;
33
- if (this._parent) {
34
- this._parent.addChild(this);
35
- }
36
- }
37
- return this;
38
- };
39
- return ChildGraphItem;
40
- }(GraphItem));
41
- var Subgraph = /** @class */ (function (_super) {
42
- __extends(Subgraph, _super);
43
- function Subgraph(g, _) {
44
- var _this = _super.call(this, g, _) || this;
45
- _this._children = [];
46
- return _this;
47
- }
48
- Subgraph.prototype.children = function () {
49
- return this._children;
50
- };
51
- Subgraph.prototype.addChild = function (_) {
52
- this._children.push(_);
53
- };
54
- Subgraph.prototype.removeChild = function (_) {
55
- this._children = this._children.filter(function (row) { return row.id !== _.id; });
56
- };
57
- return Subgraph;
58
- }(ChildGraphItem));
59
- var Vertex = /** @class */ (function (_super) {
60
- __extends(Vertex, _super);
61
- function Vertex(g, _) {
62
- var _this = _super.call(this, g, _) || this;
63
- _this._inEdges = [];
64
- _this._outEdges = [];
65
- return _this;
66
- }
67
- Vertex.prototype.edges = function () {
68
- return __spreadArray(__spreadArray([], this._inEdges, true), this._outEdges, true);
69
- };
70
- Vertex.prototype.edgeCount = function () {
71
- return this._outEdges.length + this._inEdges.length;
72
- };
73
- Vertex.prototype.inEdges = function () {
74
- return this._inEdges;
75
- };
76
- Vertex.prototype.addInEdge = function (e) {
77
- this._inEdges.push(e);
78
- };
79
- Vertex.prototype.removeInEdge = function (id) {
80
- this._inEdges = this._inEdges.filter(function (e) { return e._.id !== id; });
81
- };
82
- Vertex.prototype.outEdges = function () {
83
- return this._outEdges;
84
- };
85
- Vertex.prototype.addOutEdge = function (e) {
86
- this._outEdges.push(e);
87
- };
88
- Vertex.prototype.removeOutEdge = function (id) {
89
- this._outEdges = this._outEdges.filter(function (e) { return e._.id !== id; });
90
- };
91
- return Vertex;
92
- }(ChildGraphItem));
93
- var Edge = /** @class */ (function (_super) {
94
- __extends(Edge, _super);
95
- function Edge(g, _, source, target) {
96
- var _this = _super.call(this, g, _) || this;
97
- _this._source = source;
98
- _this._target = target;
99
- return _this;
100
- }
101
- return Edge;
102
- }(ChildGraphItem));
103
- var Graph2 = /** @class */ (function () {
104
- function Graph2(directed) {
105
- if (directed === void 0) { directed = true; }
106
- this._subgraphMap = {};
107
- this._vertexMap = {};
108
- this._edgeMap = {};
109
- this._idFunc = function (_) { return typeof _.id === "function" ? _.id() : _.id; };
110
- this._sourceFunc = function (_) { return typeof _.source === "function" ? _.source() : _.source; };
111
- this._targetFunc = function (_) { return typeof _.target === "function" ? _.target() : _.target; };
112
- this._updateFunc = function (before, after) { return after; };
113
- this._directed = directed;
114
- }
115
- Graph2.prototype.clear = function () {
116
- this._subgraphMap = {};
117
- this._vertexMap = {};
118
- this._edgeMap = {};
119
- return this;
120
- };
121
- Graph2.prototype.clearParents = function () {
122
- for (var key in this._subgraphMap) {
123
- this._subgraphMap[key].clearParent();
124
- }
125
- for (var key in this._vertexMap) {
126
- this._vertexMap[key].clearParent();
127
- }
128
- return this;
129
- };
130
- Graph2.prototype.isDirected = function () {
131
- return this._directed;
132
- };
133
- Graph2.prototype.idFunc = function (_) {
134
- this._idFunc = _;
135
- return this;
136
- };
137
- Graph2.prototype.sourceFunc = function (_) {
138
- this._sourceFunc = _;
139
- return this;
140
- };
141
- Graph2.prototype.targetFunc = function (_) {
142
- this._targetFunc = _;
143
- return this;
144
- };
145
- Graph2.prototype.updateFunc = function (_) {
146
- this._updateFunc = _;
147
- return this;
148
- };
149
- Graph2.prototype.id = function (_) {
150
- return this._idFunc(_);
151
- };
152
- Graph2.prototype.type = function (id) {
153
- if (this.subgraphExists(id))
154
- return "S";
155
- if (this.vertexExists(id))
156
- return "V";
157
- if (this.edgeExists(id))
158
- return "E";
159
- return "";
160
- };
161
- Graph2.prototype.isSubgraph = function (_) {
162
- return this.subgraphExists(this.id(_));
163
- };
164
- Graph2.prototype.isVertex = function (_) {
165
- return this.vertexExists(this.id(_));
166
- };
167
- Graph2.prototype.isEdge = function (_) {
168
- return this.edgeExists(this.id(_));
169
- };
170
- Graph2.prototype.allItems = function () {
171
- return __spreadArray(__spreadArray(__spreadArray([], this.allSubgraphs(), true), this.allVertices(), true), this.allEdges(), true);
172
- };
173
- Graph2.prototype.item = function (id) {
174
- if (this.subgraphExists(id))
175
- return this.subgraph(id);
176
- if (this.vertexExists(id))
177
- return this.vertex(id);
178
- if (this.edgeExists(id))
179
- return this.edge(id);
180
- return undefined;
181
- };
182
- Graph2.prototype.itemExists = function (id) {
183
- return this.edgeExists(id) || this.vertexExists(id) || this.subgraphExists(id);
184
- };
185
- // Subgraphs ---
186
- Graph2.prototype.allSubgraphs = function () {
187
- var retVal = [];
188
- for (var key in this._subgraphMap) {
189
- retVal.push(this._subgraphMap[key]._);
190
- }
191
- return retVal;
192
- };
193
- Graph2.prototype.subgraphs = function () {
194
- var retVal = [];
195
- for (var key in this._subgraphMap) {
196
- if (this._subgraphMap[key].parent() === undefined) {
197
- retVal.push(this._subgraphMap[key]._);
198
- }
199
- }
200
- return retVal;
201
- };
202
- Graph2.prototype.subgraphExists = function (id) {
203
- return !!this._subgraphMap[id];
204
- };
205
- Graph2.prototype.subgraph = function (id) {
206
- return this._subgraphMap[id]._;
207
- };
208
- Graph2.prototype.subgraphSubgraphs = function (id) {
209
- var _this = this;
210
- return this._subgraphMap[id].children().filter(function (child) { return _this.isSubgraph(child._); }).map(function (child) { return child._; });
211
- };
212
- Graph2.prototype.subgraphVertices = function (id) {
213
- var _this = this;
214
- return this._subgraphMap[id].children().filter(function (child) { return _this.isVertex(child._); }).map(function (child) { return child._; });
215
- };
216
- Graph2.prototype.subgraphEdges = function (id) {
217
- var _this = this;
218
- return this._subgraphMap[id].children().filter(function (child) { return _this.isEdge(child._); }).map(function (child) { return child._; });
219
- };
220
- Graph2.prototype.addSubgraph = function (s, parent) {
221
- var s_id = this._idFunc(s);
222
- if (this._subgraphMap[s_id])
223
- throw new Error("Subgraph '".concat(s_id, "' already exists."));
224
- var subgraph = new Subgraph(this, s);
225
- if (parent) {
226
- var p_id = this._idFunc(parent);
227
- if (!this._subgraphMap[p_id])
228
- throw new Error("Subgraph '".concat(p_id, "' does not exist."));
229
- subgraph.parent(this._subgraphMap[p_id]);
230
- }
231
- this._subgraphMap[s_id] = subgraph;
232
- return this;
233
- };
234
- Graph2.prototype.mergeSubgraphs = function (_subgraphs) {
235
- var _this = this;
236
- if (_subgraphs === void 0) { _subgraphs = []; }
237
- var sgDiff = compare2(this.allSubgraphs(), _subgraphs, function (sg) { return _this._idFunc(sg); }, this._updateFunc);
238
- sgDiff.exit.forEach(function (sg) { return _this.removeSubgraph(_this._idFunc(sg)); });
239
- sgDiff.enter.forEach(function (sg) { return _this.addSubgraph(sg); });
240
- sgDiff.update.forEach(function (sg) { return _this.updateSubgraph(sg); });
241
- return this;
242
- };
243
- Graph2.prototype.updateSubgraph = function (sg) {
244
- var sg_id = this._idFunc(sg);
245
- var subgraph = this._subgraphMap[sg_id];
246
- if (!subgraph)
247
- throw new Error("Subgraph '".concat(sg_id, "' does not exist."));
248
- subgraph._ = sg;
249
- return this;
250
- };
251
- Graph2.prototype.removeSubgraph = function (id, promoteChildren) {
252
- var _this = this;
253
- if (promoteChildren === void 0) { promoteChildren = true; }
254
- var sg = this._subgraphMap[id];
255
- if (!sg)
256
- throw new Error("Subgraph '".concat(id, "' does not exist."));
257
- sg.children().forEach(function (child) {
258
- if (promoteChildren) {
259
- child.parent(sg.parent());
260
- }
261
- else {
262
- if (child instanceof Subgraph) {
263
- _this.removeSubgraph(child.id());
264
- }
265
- else {
266
- _this.removeVertex(child.id());
267
- }
268
- }
269
- });
270
- delete this._subgraphMap[id];
271
- return this;
272
- };
273
- Graph2.prototype.subgraphParent = function (id, parentID) {
274
- var item = this._subgraphMap[id];
275
- if (!item)
276
- throw new Error("Subgraph '".concat(id, "' does not exist."));
277
- if (parentID === void 0) {
278
- var parent_1 = item.parent();
279
- return parent_1 ? parent_1._ : undefined;
280
- }
281
- var parent = this._subgraphMap[parentID];
282
- if (!parent)
283
- throw new Error("Vertex parent '".concat(parent, "' does not exist."));
284
- item.parent(parent);
285
- return this;
286
- };
287
- // Vertices ---
288
- Graph2.prototype.allVertices = function () {
289
- var retVal = [];
290
- for (var key in this._vertexMap) {
291
- retVal.push(this._vertexMap[key]._);
292
- }
293
- return retVal;
294
- };
295
- Graph2.prototype.vertices = function () {
296
- var retVal = [];
297
- for (var key in this._vertexMap) {
298
- if (this._vertexMap[key].parent() === undefined) {
299
- retVal.push(this._vertexMap[key]._);
300
- }
301
- }
302
- return retVal;
303
- };
304
- Graph2.prototype.vertexExists = function (id) {
305
- return !!this._vertexMap[id];
306
- };
307
- Graph2.prototype.vertex = function (id) {
308
- return this._vertexMap[id]._;
309
- };
310
- Graph2.prototype.allEdges = function () {
311
- var retVal = [];
312
- for (var key in this._edgeMap) {
313
- retVal.push(this._edgeMap[key]._);
314
- }
315
- return retVal;
316
- };
317
- Graph2.prototype.edges = function () {
318
- var retVal = [];
319
- for (var key in this._edgeMap) {
320
- if (this._edgeMap[key].parent() === undefined) {
321
- retVal.push(this._edgeMap[key]._);
322
- }
323
- }
324
- return retVal;
325
- };
326
- Graph2.prototype.vertexEdges = function (vertexID) {
327
- return this._vertexMap[vertexID].edges().map(function (e) { return e._; });
328
- };
329
- Graph2.prototype.inEdges = function (vertexID) {
330
- return this._vertexMap[vertexID].inEdges().map(function (e) { return e._; });
331
- };
332
- Graph2.prototype.outEdges = function (vertexID) {
333
- return this._vertexMap[vertexID].outEdges().map(function (e) { return e._; });
334
- };
335
- Graph2.prototype._neighbors = function (id) {
336
- return __spreadArray(__spreadArray([], this._vertexMap[id].outEdges().map(function (e) { return e._target; }), true), this._vertexMap[id].inEdges().map(function (e) { return e._source; }), true);
337
- };
338
- Graph2.prototype.neighbors = function (id) {
339
- return this._neighbors(id).map(function (n) { return n._; });
340
- };
341
- Graph2.prototype.singleNeighbors = function (id) {
342
- return this._neighbors(id).filter(function (n) { return n.edgeCount() === 1; }).map(function (n) { return n._; });
343
- };
344
- Graph2.prototype.addVertex = function (v, parent) {
345
- var v_id = this._idFunc(v);
346
- if (this._vertexMap[v_id])
347
- throw new Error("Vertex '".concat(v_id, "' already exists."));
348
- var vertex = new Vertex(this, v);
349
- if (parent) {
350
- var p_id = this._idFunc(parent);
351
- if (!this.subgraphExists(p_id))
352
- throw new Error("Subgraph '".concat(p_id, "' does not exist."));
353
- vertex.parent(this._subgraphMap[p_id]);
354
- }
355
- this._vertexMap[v_id] = vertex;
356
- return this;
357
- };
358
- Graph2.prototype.mergeVertices = function (_vertices) {
359
- var _this = this;
360
- var vDiff = compare2(this.allVertices(), _vertices, function (v) { return _this._idFunc(v); }, this._updateFunc);
361
- vDiff.exit.forEach(function (v) { return _this.removeVertex(_this._idFunc(v)); });
362
- vDiff.enter.forEach(function (v) { return _this.addVertex(v); });
363
- vDiff.update.forEach(function (v) { return _this.updateVertex(v); });
364
- return this;
365
- };
366
- Graph2.prototype.updateVertex = function (v) {
367
- var v_id = this._idFunc(v);
368
- var vertex = this._vertexMap[v_id];
369
- if (!vertex)
370
- throw new Error("Vertex '".concat(v_id, "' does not exist."));
371
- vertex._ = v;
372
- return this;
373
- };
374
- Graph2.prototype.removeVertex = function (id) {
375
- var _this = this;
376
- var v = this._vertexMap[id];
377
- if (!v)
378
- throw new Error("Vertex '".concat(id, "' does not exist."));
379
- v.edges().forEach(function (e) {
380
- _this.removeEdge(e.id());
381
- });
382
- delete this._vertexMap[id];
383
- return this;
384
- };
385
- Graph2.prototype.vertexParent = function (id, parentID) {
386
- var item = this._vertexMap[id];
387
- if (!item)
388
- throw new Error("Vertex '".concat(id, "' does not exist."));
389
- if (parentID === void 0) {
390
- var parent_2 = item.parent();
391
- return parent_2 ? parent_2._ : undefined;
392
- }
393
- var parent = this._subgraphMap[parentID];
394
- if (!parent)
395
- throw new Error("Vertex parent '".concat(parent, "' does not exist."));
396
- item.parent(parent);
397
- return this;
398
- };
399
- // Edges ---
400
- Graph2.prototype.edgeExists = function (id) {
401
- return !!this._edgeMap[id];
402
- };
403
- Graph2.prototype.edge = function (id) {
404
- return this._edgeMap[id]._;
405
- };
406
- Graph2.prototype.addEdge = function (e, parent) {
407
- var e_id = this._idFunc(e);
408
- var e_source = this._sourceFunc(e);
409
- var e_target = this._targetFunc(e);
410
- if (this._edgeMap[e_id])
411
- throw new Error("Edge '".concat(e_id, "' already exists."));
412
- if (!this.vertexExists(e_source))
413
- throw new Error("Edge Source '".concat(e_source, "' does not exist."));
414
- if (!this.vertexExists(e_target))
415
- throw new Error("Edge Target '".concat(e_target, "' does not exist."));
416
- var edge = new Edge(this, e, this._vertexMap[e_source], this._vertexMap[e_target]);
417
- if (parent) {
418
- var p_id = this._idFunc(parent);
419
- if (!this.subgraphExists(p_id))
420
- throw new Error("Subgraph '".concat(p_id, "' does not exist."));
421
- edge.parent(this._subgraphMap[p_id]);
422
- }
423
- this._edgeMap[e_id] = edge;
424
- this._vertexMap[e_source].addOutEdge(edge);
425
- this._vertexMap[e_target].addInEdge(edge);
426
- return this;
427
- };
428
- Graph2.prototype.mergeEdges = function (_edges) {
429
- var _this = this;
430
- var eDiff = compare2(this.allEdges(), _edges, function (e) { return _this._idFunc(e); }, this._updateFunc);
431
- eDiff.exit.forEach(function (e) { return _this.removeEdge(_this._idFunc(e)); });
432
- eDiff.enter.forEach(function (e) { return _this.addEdge(e); });
433
- eDiff.update.forEach(function (e) { return _this.updateEdge(e); });
434
- return this;
435
- };
436
- Graph2.prototype.updateEdge = function (e) {
437
- var _a, _b, _c, _d;
438
- var e_id = this._idFunc(e);
439
- var edge = this._edgeMap[e_id];
440
- if (!edge)
441
- throw new Error("Edge '".concat(e_id, "' does not exist."));
442
- var old_source = edge._source.id();
443
- var new_source = this._sourceFunc(e);
444
- if (old_source !== new_source) {
445
- (_a = this._vertexMap[old_source]) === null || _a === void 0 ? void 0 : _a.removeOutEdge(e_id);
446
- (_b = this._vertexMap[new_source]) === null || _b === void 0 ? void 0 : _b.addOutEdge(edge);
447
- }
448
- var old_target = edge._target.id();
449
- var new_target = this._targetFunc(e);
450
- if (old_target !== new_target) {
451
- (_c = this._vertexMap[old_target]) === null || _c === void 0 ? void 0 : _c.removeInEdge(e_id);
452
- (_d = this._vertexMap[new_target]) === null || _d === void 0 ? void 0 : _d.addInEdge(edge);
453
- }
454
- edge._ = e;
455
- edge._source = this._vertexMap[new_source];
456
- edge._target = this._vertexMap[new_target];
457
- return this;
458
- };
459
- Graph2.prototype.removeEdge = function (id) {
460
- var e = this._edgeMap[id];
461
- if (!e)
462
- throw new Error("Edge '".concat(id, "' does not exist."));
463
- var e_sourceID = this._idFunc(e._source._);
464
- if (!this.vertexExists(e_sourceID))
465
- throw new Error("Edge Source'".concat(e_sourceID, "' does not exist."));
466
- this._vertexMap[e_sourceID].removeOutEdge(id);
467
- var e_targetID = this._idFunc(e._target._);
468
- if (!this.vertexExists(e_targetID))
469
- throw new Error("Edge Target'".concat(e_targetID, "' does not exist."));
470
- this._vertexMap[e_targetID].removeInEdge(id);
471
- delete this._edgeMap[id];
472
- return this;
473
- };
474
- Graph2.prototype._hwalk = function (item, formatter) {
475
- var _this = this;
476
- if (item instanceof Subgraph) {
477
- return formatter("subgraph", item._, item.children().map(function (child) { return _this._hwalk(child, formatter); }));
478
- }
479
- else {
480
- return formatter("vertex", item._);
481
- }
482
- };
483
- Graph2.prototype.hierarchy = function (formatter) {
484
- var retVal = [];
485
- for (var id in this._subgraphMap) {
486
- var sg = this._subgraphMap[id];
487
- if (sg.parent() === undefined) {
488
- retVal.push(this._hwalk(sg, formatter));
489
- }
490
- }
491
- for (var id in this._vertexMap) {
492
- var v = this._vertexMap[id];
493
- if (v.parent() === undefined) {
494
- retVal.push(this._hwalk(v, formatter));
495
- }
496
- }
497
- return retVal;
498
- };
499
- Graph2.prototype.dijkstra = function (source, target) {
500
- var edges = this.allEdges();
501
- var Q = new Set();
502
- var prev = {};
503
- var dist = {};
504
- var adj = {};
505
- function vertex_with_min_dist(Q, dist) {
506
- var min_distance = Infinity;
507
- var u = null;
508
- Q.forEach(function (v) {
509
- if (dist[v] < min_distance) {
510
- min_distance = dist[v];
511
- u = v;
512
- }
513
- });
514
- return u;
515
- }
516
- for (var i = 0; i < edges.length; i++) {
517
- var v1 = this._sourceFunc(edges[i]);
518
- var v2 = this._targetFunc(edges[i]);
519
- var len_1 = 1;
520
- Q.add(v1);
521
- Q.add(v2);
522
- dist[v1] = Infinity;
523
- dist[v2] = Infinity;
524
- if (adj[v1] === undefined)
525
- adj[v1] = {};
526
- if (adj[v2] === undefined)
527
- adj[v2] = {};
528
- adj[v1][v2] = len_1;
529
- adj[v2][v1] = len_1;
530
- }
531
- dist[source] = 0;
532
- while (Q.size) {
533
- var u_1 = vertex_with_min_dist(Q, dist);
534
- if (u_1 === null)
535
- break;
536
- var neighbors = Object.keys(adj[u_1]).filter(function (v) { return Q.has(v); }); // Neighbor still in Q
537
- Q.delete(u_1);
538
- if (u_1 === target)
539
- break; // Break when the target has been found
540
- for (var _i = 0, neighbors_1 = neighbors; _i < neighbors_1.length; _i++) {
541
- var v = neighbors_1[_i];
542
- var alt = dist[u_1] + adj[u_1][v];
543
- if (alt < dist[v]) {
544
- dist[v] = alt;
545
- prev[v] = u_1;
546
- }
547
- }
548
- }
549
- var u = target;
550
- var ids = [u];
551
- var len = 0;
552
- while (prev[u] !== undefined) {
553
- ids.unshift(prev[u]);
554
- len += adj[u][prev[u]];
555
- u = prev[u];
556
- }
557
- return { ids: ids, len: len };
558
- };
559
- Graph2.prototype.sort = function (v_id) {
560
- var retVal = [];
561
- var visited = {};
562
- var visit = function (vertex, ancestors) {
563
- if (ancestors === void 0) { ancestors = []; }
564
- var v_id = vertex.id();
565
- if (visited[v_id])
566
- return;
567
- visited[v_id] = true;
568
- ancestors.push(vertex);
569
- vertex.outEdges().forEach(function (e) {
570
- if (ancestors.indexOf(e._target) < 0) {
571
- visit(e._target, __spreadArray([], ancestors, true));
572
- }
573
- });
574
- retVal.unshift(vertex._);
575
- };
576
- if (v_id) {
577
- visit(this._vertexMap[v_id]);
578
- }
579
- else {
580
- for (var key in this._vertexMap) {
581
- visit(this._vertexMap[key]);
582
- }
583
- }
584
- return retVal;
585
- };
586
- return Graph2;
587
- }());
588
- export { Graph2 };
589
- var Set = /** @class */ (function () {
590
- function Set() {
591
- this._content = [];
592
- }
593
- Object.defineProperty(Set.prototype, "size", {
594
- get: function () {
595
- return this._content.length;
596
- },
597
- enumerable: false,
598
- configurable: true
599
- });
600
- Set.prototype.has = function (_) {
601
- return this._content.indexOf(_) >= 0;
602
- };
603
- Set.prototype.add = function (_) {
604
- if (!this.has(_)) {
605
- this._content.push(_);
606
- }
607
- };
608
- Set.prototype.delete = function (_) {
609
- var idx = this._content.indexOf(_);
610
- if (idx >= 0) {
611
- this._content.splice(idx, 1);
612
- }
613
- };
614
- Set.prototype.forEach = function (_) {
615
- this._content.forEach(_);
616
- };
617
- return Set;
618
- }());
619
- //# sourceMappingURL=graph2.js.map