graph-typed 2.5.1 → 2.5.2

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 (73) hide show
  1. package/dist/cjs/index.cjs +148 -6
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs-legacy/index.cjs +148 -6
  4. package/dist/cjs-legacy/index.cjs.map +1 -1
  5. package/dist/esm/index.mjs +148 -7
  6. package/dist/esm/index.mjs.map +1 -1
  7. package/dist/esm-legacy/index.mjs +148 -7
  8. package/dist/esm-legacy/index.mjs.map +1 -1
  9. package/dist/types/common/error.d.ts +9 -0
  10. package/dist/types/common/index.d.ts +1 -1
  11. package/dist/types/data-structures/binary-tree/avl-tree.d.ts +36 -0
  12. package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +42 -0
  13. package/dist/types/data-structures/binary-tree/binary-tree.d.ts +77 -2
  14. package/dist/types/data-structures/binary-tree/bst.d.ts +171 -0
  15. package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +57 -0
  16. package/dist/types/data-structures/binary-tree/segment-tree.d.ts +18 -0
  17. package/dist/types/data-structures/binary-tree/tree-map.d.ts +409 -0
  18. package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +411 -6
  19. package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +339 -6
  20. package/dist/types/data-structures/binary-tree/tree-set.d.ts +391 -0
  21. package/dist/types/data-structures/graph/directed-graph.d.ts +30 -0
  22. package/dist/types/data-structures/graph/undirected-graph.d.ts +27 -0
  23. package/dist/types/data-structures/hash/hash-map.d.ts +33 -0
  24. package/dist/types/data-structures/heap/heap.d.ts +42 -0
  25. package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +51 -0
  26. package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +45 -0
  27. package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +54 -0
  28. package/dist/types/data-structures/matrix/matrix.d.ts +24 -0
  29. package/dist/types/data-structures/queue/deque.d.ts +45 -0
  30. package/dist/types/data-structures/queue/queue.d.ts +36 -0
  31. package/dist/types/data-structures/stack/stack.d.ts +30 -0
  32. package/dist/types/data-structures/trie/trie.d.ts +36 -0
  33. package/dist/types/types/data-structures/binary-tree/bst.d.ts +1 -0
  34. package/dist/types/types/data-structures/binary-tree/tree-map.d.ts +5 -0
  35. package/dist/types/types/data-structures/binary-tree/tree-multi-set.d.ts +4 -0
  36. package/dist/types/types/data-structures/binary-tree/tree-set.d.ts +4 -0
  37. package/dist/umd/graph-typed.js +148 -7
  38. package/dist/umd/graph-typed.js.map +1 -1
  39. package/dist/umd/graph-typed.min.js +2 -2
  40. package/dist/umd/graph-typed.min.js.map +1 -1
  41. package/package.json +2 -2
  42. package/src/common/error.ts +19 -1
  43. package/src/common/index.ts +1 -1
  44. package/src/data-structures/base/iterable-element-base.ts +3 -2
  45. package/src/data-structures/binary-tree/avl-tree.ts +47 -0
  46. package/src/data-structures/binary-tree/binary-indexed-tree.ts +46 -4
  47. package/src/data-structures/binary-tree/binary-tree.ts +79 -4
  48. package/src/data-structures/binary-tree/bst.ts +441 -6
  49. package/src/data-structures/binary-tree/red-black-tree.ts +73 -0
  50. package/src/data-structures/binary-tree/segment-tree.ts +18 -0
  51. package/src/data-structures/binary-tree/tree-map.ts +434 -9
  52. package/src/data-structures/binary-tree/tree-multi-map.ts +426 -5
  53. package/src/data-structures/binary-tree/tree-multi-set.ts +350 -6
  54. package/src/data-structures/binary-tree/tree-set.ts +410 -8
  55. package/src/data-structures/graph/abstract-graph.ts +2 -2
  56. package/src/data-structures/graph/directed-graph.ts +30 -0
  57. package/src/data-structures/graph/undirected-graph.ts +27 -0
  58. package/src/data-structures/hash/hash-map.ts +35 -4
  59. package/src/data-structures/heap/heap.ts +46 -4
  60. package/src/data-structures/heap/max-heap.ts +2 -2
  61. package/src/data-structures/linked-list/doubly-linked-list.ts +51 -0
  62. package/src/data-structures/linked-list/singly-linked-list.ts +45 -0
  63. package/src/data-structures/linked-list/skip-linked-list.ts +59 -5
  64. package/src/data-structures/matrix/matrix.ts +33 -9
  65. package/src/data-structures/priority-queue/max-priority-queue.ts +2 -2
  66. package/src/data-structures/queue/deque.ts +45 -0
  67. package/src/data-structures/queue/queue.ts +36 -0
  68. package/src/data-structures/stack/stack.ts +30 -0
  69. package/src/data-structures/trie/trie.ts +38 -2
  70. package/src/types/data-structures/binary-tree/bst.ts +1 -0
  71. package/src/types/data-structures/binary-tree/tree-map.ts +6 -0
  72. package/src/types/data-structures/binary-tree/tree-multi-set.ts +5 -0
  73. package/src/types/data-structures/binary-tree/tree-set.ts +5 -0
@@ -25,6 +25,10 @@ var arrayRemove = /* @__PURE__ */ __name(function(array, predicate) {
25
25
  }, "arrayRemove");
26
26
 
27
27
  // src/common/error.ts
28
+ function raise(ErrorClass, message) {
29
+ throw new ErrorClass(message);
30
+ }
31
+ __name(raise, "raise");
28
32
  var ERR = {
29
33
  // Range / index
30
34
  indexOutOfRange: /* @__PURE__ */ __name((index, min, max, ctx) => `${ctx ? ctx + ": " : ""}Index ${index} is out of range [${min}, ${max}].`, "indexOutOfRange"),
@@ -46,7 +50,9 @@ var ERR = {
46
50
  matrixSingular: /* @__PURE__ */ __name(() => "Matrix: Singular matrix, inverse does not exist.", "matrixSingular"),
47
51
  matrixNotSquare: /* @__PURE__ */ __name(() => "Matrix: Must be square for inversion.", "matrixNotSquare"),
48
52
  matrixNotRectangular: /* @__PURE__ */ __name(() => "Matrix: Must be rectangular for transposition.", "matrixNotRectangular"),
49
- matrixRowMismatch: /* @__PURE__ */ __name((expected, got) => `Matrix: Expected row length ${expected}, but got ${got}.`, "matrixRowMismatch")
53
+ matrixRowMismatch: /* @__PURE__ */ __name((expected, got) => `Matrix: Expected row length ${expected}, but got ${got}.`, "matrixRowMismatch"),
54
+ // Order statistic
55
+ orderStatisticNotEnabled: /* @__PURE__ */ __name((method, ctx) => `${ctx ? ctx + ": " : ""}${method}() requires enableOrderStatistic: true.`, "orderStatisticNotEnabled")
50
56
  };
51
57
 
52
58
  // src/common/index.ts
@@ -275,7 +281,7 @@ var _IterableElementBase = class _IterableElementBase {
275
281
  if (options) {
276
282
  const { toElementFn } = options;
277
283
  if (typeof toElementFn === "function") this._toElementFn = toElementFn;
278
- else if (toElementFn) throw new TypeError("toElementFn must be a function type");
284
+ else if (toElementFn) raise(TypeError, "toElementFn must be a function type");
279
285
  }
280
286
  }
281
287
  /**
@@ -431,7 +437,7 @@ var _IterableElementBase = class _IterableElementBase {
431
437
  acc = initialValue;
432
438
  } else {
433
439
  const first = iter.next();
434
- if (first.done) throw new TypeError("Reduce of empty structure with no initial value");
440
+ if (first.done) raise(TypeError, "Reduce of empty structure with no initial value");
435
441
  acc = first.value;
436
442
  index = 1;
437
443
  }
@@ -682,7 +688,7 @@ var _Heap = class _Heap extends IterableElementBase {
682
688
  __publicField(this, "_elements", []);
683
689
  __publicField(this, "_DEFAULT_COMPARATOR", /* @__PURE__ */ __name((a, b) => {
684
690
  if (typeof a === "object" || typeof b === "object") {
685
- throw new TypeError(ERR.comparatorRequired("Heap"));
691
+ raise(TypeError, ERR.comparatorRequired("Heap"));
686
692
  }
687
693
  if (a > b) return 1;
688
694
  if (a < b) return -1;
@@ -735,6 +741,9 @@ var _Heap = class _Heap extends IterableElementBase {
735
741
 
736
742
 
737
743
 
744
+
745
+
746
+
738
747
 
739
748
 
740
749
 
@@ -819,6 +828,9 @@ var _Heap = class _Heap extends IterableElementBase {
819
828
 
820
829
 
821
830
 
831
+
832
+
833
+
822
834
 
823
835
 
824
836
 
@@ -873,6 +885,9 @@ var _Heap = class _Heap extends IterableElementBase {
873
885
 
874
886
 
875
887
 
888
+
889
+
890
+
876
891
 
877
892
 
878
893
 
@@ -929,6 +944,9 @@ var _Heap = class _Heap extends IterableElementBase {
929
944
 
930
945
 
931
946
 
947
+
948
+
949
+
932
950
 
933
951
 
934
952
 
@@ -1001,6 +1019,9 @@ var _Heap = class _Heap extends IterableElementBase {
1001
1019
 
1002
1020
 
1003
1021
 
1022
+
1023
+
1024
+
1004
1025
 
1005
1026
 
1006
1027
 
@@ -1098,6 +1119,9 @@ var _Heap = class _Heap extends IterableElementBase {
1098
1119
 
1099
1120
 
1100
1121
 
1122
+
1123
+
1124
+
1101
1125
 
1102
1126
 
1103
1127
 
@@ -1142,6 +1166,9 @@ var _Heap = class _Heap extends IterableElementBase {
1142
1166
 
1143
1167
 
1144
1168
 
1169
+
1170
+
1171
+
1145
1172
 
1146
1173
 
1147
1174
 
@@ -1189,6 +1216,9 @@ var _Heap = class _Heap extends IterableElementBase {
1189
1216
 
1190
1217
 
1191
1218
 
1219
+
1220
+
1221
+
1192
1222
 
1193
1223
 
1194
1224
 
@@ -1233,6 +1263,9 @@ var _Heap = class _Heap extends IterableElementBase {
1233
1263
 
1234
1264
 
1235
1265
 
1266
+
1267
+
1268
+
1236
1269
 
1237
1270
 
1238
1271
 
@@ -1323,6 +1356,9 @@ var _Heap = class _Heap extends IterableElementBase {
1323
1356
 
1324
1357
 
1325
1358
 
1359
+
1360
+
1361
+
1326
1362
 
1327
1363
 
1328
1364
 
@@ -1400,6 +1436,9 @@ var _Heap = class _Heap extends IterableElementBase {
1400
1436
 
1401
1437
 
1402
1438
 
1439
+
1440
+
1441
+
1403
1442
 
1404
1443
 
1405
1444
 
@@ -1450,6 +1489,9 @@ var _Heap = class _Heap extends IterableElementBase {
1450
1489
 
1451
1490
 
1452
1491
 
1492
+
1493
+
1494
+
1453
1495
 
1454
1496
 
1455
1497
 
@@ -1499,6 +1541,9 @@ var _Heap = class _Heap extends IterableElementBase {
1499
1541
 
1500
1542
 
1501
1543
 
1544
+
1545
+
1546
+
1502
1547
 
1503
1548
 
1504
1549
 
@@ -1555,6 +1600,9 @@ var _Heap = class _Heap extends IterableElementBase {
1555
1600
 
1556
1601
 
1557
1602
 
1603
+
1604
+
1605
+
1558
1606
 
1559
1607
 
1560
1608
 
@@ -1567,7 +1615,7 @@ var _Heap = class _Heap extends IterableElementBase {
1567
1615
  */
1568
1616
  map(callback, options, thisArg) {
1569
1617
  const { comparator, toElementFn, ...rest } = options != null ? options : {};
1570
- if (!comparator) throw new TypeError(ERR.comparatorRequired("Heap.map"));
1618
+ if (!comparator) raise(TypeError, ERR.comparatorRequired("Heap.map"));
1571
1619
  const out = this._createLike([], { ...rest, comparator, toElementFn });
1572
1620
  let i = 0;
1573
1621
  for (const x of this) {
@@ -1755,6 +1803,9 @@ var _Queue = class _Queue extends LinearBase {
1755
1803
 
1756
1804
 
1757
1805
 
1806
+
1807
+
1808
+
1758
1809
 
1759
1810
 
1760
1811
 
@@ -1802,6 +1853,9 @@ var _Queue = class _Queue extends LinearBase {
1802
1853
 
1803
1854
 
1804
1855
 
1856
+
1857
+
1858
+
1805
1859
 
1806
1860
 
1807
1861
 
@@ -1865,6 +1919,9 @@ var _Queue = class _Queue extends LinearBase {
1865
1919
 
1866
1920
 
1867
1921
 
1922
+
1923
+
1924
+
1868
1925
 
1869
1926
 
1870
1927
 
@@ -1924,6 +1981,9 @@ var _Queue = class _Queue extends LinearBase {
1924
1981
 
1925
1982
 
1926
1983
 
1984
+
1985
+
1986
+
1927
1987
 
1928
1988
 
1929
1989
 
@@ -1990,6 +2050,9 @@ var _Queue = class _Queue extends LinearBase {
1990
2050
 
1991
2051
 
1992
2052
 
2053
+
2054
+
2055
+
1993
2056
 
1994
2057
 
1995
2058
 
@@ -2046,6 +2109,9 @@ var _Queue = class _Queue extends LinearBase {
2046
2109
 
2047
2110
 
2048
2111
 
2112
+
2113
+
2114
+
2049
2115
 
2050
2116
 
2051
2117
 
@@ -2095,6 +2161,9 @@ var _Queue = class _Queue extends LinearBase {
2095
2161
 
2096
2162
 
2097
2163
 
2164
+
2165
+
2166
+
2098
2167
 
2099
2168
 
2100
2169
 
@@ -2185,6 +2254,9 @@ var _Queue = class _Queue extends LinearBase {
2185
2254
 
2186
2255
 
2187
2256
 
2257
+
2258
+
2259
+
2188
2260
 
2189
2261
 
2190
2262
 
@@ -2228,6 +2300,9 @@ var _Queue = class _Queue extends LinearBase {
2228
2300
 
2229
2301
 
2230
2302
 
2303
+
2304
+
2305
+
2231
2306
 
2232
2307
 
2233
2308
 
@@ -2294,6 +2369,9 @@ var _Queue = class _Queue extends LinearBase {
2294
2369
 
2295
2370
 
2296
2371
 
2372
+
2373
+
2374
+
2297
2375
 
2298
2376
 
2299
2377
 
@@ -2344,6 +2422,9 @@ var _Queue = class _Queue extends LinearBase {
2344
2422
 
2345
2423
 
2346
2424
 
2425
+
2426
+
2427
+
2347
2428
 
2348
2429
 
2349
2430
 
@@ -2398,6 +2479,9 @@ var _Queue = class _Queue extends LinearBase {
2398
2479
 
2399
2480
 
2400
2481
 
2482
+
2483
+
2484
+
2401
2485
 
2402
2486
 
2403
2487
 
@@ -2636,7 +2720,7 @@ var _AbstractGraph = class _AbstractGraph extends IterableEntryBase {
2636
2720
  const newEdge = this.createEdge(srcOrEdge, dest, weight, value);
2637
2721
  return this._addEdge(newEdge);
2638
2722
  } else {
2639
- throw new TypeError(ERR.invalidArgument("dest must be a Vertex or vertex key when srcOrEdge is an Edge.", "Graph"));
2723
+ raise(TypeError, ERR.invalidArgument("dest must be a Vertex or vertex key when srcOrEdge is an Edge.", "Graph"));
2640
2724
  }
2641
2725
  }
2642
2726
  }
@@ -3537,6 +3621,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3537
3621
 
3538
3622
 
3539
3623
 
3624
+
3625
+
3626
+
3540
3627
 
3541
3628
 
3542
3629
 
@@ -3622,6 +3709,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3622
3709
 
3623
3710
 
3624
3711
 
3712
+
3713
+
3714
+
3625
3715
 
3626
3716
 
3627
3717
 
@@ -3705,6 +3795,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3705
3795
 
3706
3796
 
3707
3797
 
3798
+
3799
+
3800
+
3708
3801
 
3709
3802
 
3710
3803
 
@@ -3779,6 +3872,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3779
3872
 
3780
3873
 
3781
3874
 
3875
+
3876
+
3877
+
3782
3878
 
3783
3879
 
3784
3880
 
@@ -3830,6 +3926,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3830
3926
 
3831
3927
 
3832
3928
 
3929
+
3930
+
3931
+
3833
3932
 
3834
3933
 
3835
3934
 
@@ -3934,6 +4033,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
3934
4033
 
3935
4034
 
3936
4035
 
4036
+
4037
+
4038
+
3937
4039
 
3938
4040
 
3939
4041
 
@@ -4019,6 +4121,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
4019
4121
 
4020
4122
 
4021
4123
 
4124
+
4125
+
4126
+
4022
4127
 
4023
4128
 
4024
4129
 
@@ -4066,6 +4171,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
4066
4171
 
4067
4172
 
4068
4173
 
4174
+
4175
+
4176
+
4069
4177
 
4070
4178
 
4071
4179
 
@@ -4166,6 +4274,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
4166
4274
 
4167
4275
 
4168
4276
 
4277
+
4278
+
4279
+
4169
4280
 
4170
4281
 
4171
4282
 
@@ -4269,6 +4380,9 @@ var _DirectedGraph = class _DirectedGraph extends AbstractGraph {
4269
4380
 
4270
4381
 
4271
4382
 
4383
+
4384
+
4385
+
4272
4386
 
4273
4387
 
4274
4388
 
@@ -4436,6 +4550,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4436
4550
 
4437
4551
 
4438
4552
 
4553
+
4554
+
4555
+
4439
4556
 
4440
4557
 
4441
4558
 
@@ -4518,6 +4635,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4518
4635
 
4519
4636
 
4520
4637
 
4638
+
4639
+
4640
+
4521
4641
 
4522
4642
 
4523
4643
 
@@ -4599,6 +4719,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4599
4719
 
4600
4720
 
4601
4721
 
4722
+
4723
+
4724
+
4602
4725
 
4603
4726
 
4604
4727
 
@@ -4695,6 +4818,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4695
4818
 
4696
4819
 
4697
4820
 
4821
+
4822
+
4823
+
4698
4824
 
4699
4825
 
4700
4826
 
@@ -4746,6 +4872,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4746
4872
 
4747
4873
 
4748
4874
 
4875
+
4876
+
4877
+
4749
4878
 
4750
4879
 
4751
4880
 
@@ -4867,6 +4996,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
4867
4996
 
4868
4997
 
4869
4998
 
4999
+
5000
+
5001
+
4870
5002
 
4871
5003
 
4872
5004
 
@@ -5010,6 +5142,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
5010
5142
 
5011
5143
 
5012
5144
 
5145
+
5146
+
5147
+
5013
5148
 
5014
5149
 
5015
5150
 
@@ -5075,6 +5210,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
5075
5210
 
5076
5211
 
5077
5212
 
5213
+
5214
+
5215
+
5078
5216
 
5079
5217
 
5080
5218
 
@@ -5122,6 +5260,9 @@ var _UndirectedGraph = class _UndirectedGraph extends AbstractGraph {
5122
5260
 
5123
5261
 
5124
5262
 
5263
+
5264
+
5265
+
5125
5266
 
5126
5267
 
5127
5268
 
@@ -5284,6 +5425,6 @@ var MapGraph = _MapGraph;
5284
5425
  * @license MIT License
5285
5426
  */
5286
5427
 
5287
- export { AbstractEdge, AbstractGraph, AbstractVertex, DFSOperation, DirectedEdge, DirectedGraph, DirectedVertex, ERR, MapEdge, MapGraph, MapVertex, Range, UndirectedEdge, UndirectedGraph, UndirectedVertex };
5428
+ export { AbstractEdge, AbstractGraph, AbstractVertex, DFSOperation, DirectedEdge, DirectedGraph, DirectedVertex, ERR, MapEdge, MapGraph, MapVertex, Range, UndirectedEdge, UndirectedGraph, UndirectedVertex, raise };
5288
5429
  //# sourceMappingURL=index.mjs.map
5289
5430
  //# sourceMappingURL=index.mjs.map