@knowvah/dot-engine 2.6.5 → 2.6.6

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/dist/render.js CHANGED
@@ -51621,21 +51621,21 @@ function peg$parse(input, options) {
51621
51621
  const peg$r22 = /^[^\n]/;
51622
51622
  const peg$e0 = peg$literalExpectation("{", false);
51623
51623
  const peg$e1 = peg$literalExpectation("}", false);
51624
- const peg$e2 = peg$literalExpectation(";", false);
51625
- const peg$e3 = peg$literalExpectation("=", false);
51626
- const peg$e4 = peg$literalExpectation("[", false);
51627
- const peg$e5 = peg$literalExpectation("]", false);
51628
- const peg$e6 = peg$classExpectation([";", ","], false, false, false);
51629
- const peg$e7 = peg$literalExpectation(":", false);
51630
- const peg$e8 = peg$otherExpectation("edge operator");
51631
- const peg$e9 = peg$literalExpectation("->", false);
51632
- const peg$e10 = peg$literalExpectation("--", false);
51633
- const peg$e11 = peg$literalExpectation("+", false);
51634
- const peg$e12 = peg$literalExpectation('"', false);
51635
- const peg$e13 = peg$literalExpectation('\\"', false);
51636
- const peg$e14 = peg$literalExpectation("\\\n", false);
51637
- const peg$e15 = peg$literalExpectation("\\", false);
51638
- const peg$e16 = peg$anyExpectation();
51624
+ const peg$e2 = peg$anyExpectation();
51625
+ const peg$e3 = peg$literalExpectation(";", false);
51626
+ const peg$e4 = peg$literalExpectation("=", false);
51627
+ const peg$e5 = peg$literalExpectation("[", false);
51628
+ const peg$e6 = peg$literalExpectation("]", false);
51629
+ const peg$e7 = peg$classExpectation([";", ","], false, false, false);
51630
+ const peg$e8 = peg$literalExpectation(":", false);
51631
+ const peg$e9 = peg$otherExpectation("edge operator");
51632
+ const peg$e10 = peg$literalExpectation("->", false);
51633
+ const peg$e11 = peg$literalExpectation("--", false);
51634
+ const peg$e12 = peg$literalExpectation("+", false);
51635
+ const peg$e13 = peg$literalExpectation('"', false);
51636
+ const peg$e14 = peg$literalExpectation('\\"', false);
51637
+ const peg$e15 = peg$literalExpectation("\\\n", false);
51638
+ const peg$e16 = peg$literalExpectation("\\", false);
51639
51639
  const peg$e17 = peg$classExpectation(['"', "\\"], true, false, false);
51640
51640
  const peg$e18 = peg$literalExpectation("<", false);
51641
51641
  const peg$e19 = peg$literalExpectation(">", false);
@@ -51667,86 +51667,90 @@ function peg$parse(input, options) {
51667
51667
  const peg$e45 = peg$classExpectation(["\n"], true, false, false);
51668
51668
  const peg$e46 = peg$literalExpectation("\n", false);
51669
51669
  const peg$e47 = peg$literalExpectation("#", false);
51670
- function peg$f0(s, t, id, stmts) {
51670
+ function peg$f0(s, t, id, stmts, end) {
51671
51671
  return {
51672
51672
  type: "graph",
51673
51673
  strict: s,
51674
51674
  directed: t,
51675
51675
  id,
51676
- stmts
51676
+ stmts,
51677
+ end
51677
51678
  };
51678
51679
  }
51679
51680
  function peg$f1() {
51680
- return { type: "graph", strict: false, directed: false, id: null, stmts: [] };
51681
+ return { type: "graph", strict: false, directed: false, id: null, stmts: [], end: text().length };
51681
51682
  }
51682
51683
  function peg$f2() {
51683
- return true;
51684
+ return offset();
51684
51685
  }
51685
51686
  function peg$f3() {
51686
- return false;
51687
+ return true;
51687
51688
  }
51688
51689
  function peg$f4() {
51689
- return true;
51690
+ return false;
51690
51691
  }
51691
51692
  function peg$f5() {
51693
+ return true;
51694
+ }
51695
+ function peg$f6() {
51692
51696
  return false;
51693
51697
  }
51694
- function peg$f6(a) {
51698
+ function peg$f7(a) {
51695
51699
  return a;
51696
51700
  }
51697
- function peg$f7() {
51701
+ function peg$f8() {
51698
51702
  return null;
51699
51703
  }
51700
- function peg$f8(s) {
51704
+ function peg$f9(s) {
51701
51705
  return s;
51702
51706
  }
51703
- function peg$f9(stmts) {
51707
+ function peg$f10(stmts) {
51704
51708
  return stmts;
51705
51709
  }
51706
- function peg$f10(s) {
51710
+ function peg$f11(s) {
51707
51711
  return s;
51708
51712
  }
51709
- function peg$f11(s) {
51713
+ function peg$f12(s) {
51710
51714
  return s;
51711
51715
  }
51712
- function peg$f12(t, m, attrs) {
51716
+ function peg$f13(t, m, attrs) {
51713
51717
  if (m) console.error("Warning: attribute macros not implemented");
51714
51718
  return { type: "attr", target: t, attrs };
51715
51719
  }
51716
- function peg$f13(a) {
51720
+ function peg$f14(a) {
51717
51721
  return { type: "assign", key: a.key, value: a.value };
51718
51722
  }
51719
- function peg$f14() {
51723
+ function peg$f15() {
51720
51724
  return true;
51721
51725
  }
51722
- function peg$f15() {
51726
+ function peg$f16() {
51723
51727
  return false;
51724
51728
  }
51725
- function peg$f16() {
51729
+ function peg$f17() {
51726
51730
  return "graph";
51727
51731
  }
51728
- function peg$f17() {
51732
+ function peg$f18() {
51729
51733
  return "node";
51730
51734
  }
51731
- function peg$f18() {
51735
+ function peg$f19() {
51732
51736
  return "edge";
51733
51737
  }
51734
- function peg$f19(defs, rest) {
51738
+ function peg$f20(defs, rest) {
51735
51739
  return defs.concat(rest);
51736
51740
  }
51737
- function peg$f20() {
51741
+ function peg$f21() {
51738
51742
  return [];
51739
51743
  }
51740
- function peg$f21(a) {
51744
+ function peg$f22(a) {
51741
51745
  return a;
51742
51746
  }
51743
- function peg$f22(pairs) {
51747
+ function peg$f23(pairs) {
51744
51748
  return pairs;
51745
51749
  }
51746
- function peg$f23(k, v) {
51750
+ function peg$f24(k, v) {
51747
51751
  return { key: k, value: v };
51748
51752
  }
51749
- function peg$f24(head, chain, attrs) {
51753
+ function peg$f25(head, chain, attrs) {
51750
51754
  if (chain.length > 0) {
51751
51755
  const nodes = [head].concat(chain);
51752
51756
  return { type: "edge", nodes, attrs };
@@ -51757,70 +51761,70 @@ function peg$parse(input, options) {
51757
51761
  return { type: "node", id: head, attrs };
51758
51762
  }
51759
51763
  }
51760
- function peg$f25(s) {
51764
+ function peg$f26(s) {
51761
51765
  return s;
51762
51766
  }
51763
- function peg$f26(n) {
51767
+ function peg$f27(n) {
51764
51768
  return n;
51765
51769
  }
51766
- function peg$f27(id, port, compass) {
51770
+ function peg$f28(id, port, compass) {
51767
51771
  return { id, port, compass };
51768
51772
  }
51769
- function peg$f28(id, port) {
51773
+ function peg$f29(id, port) {
51770
51774
  return { id, port, compass: null };
51771
51775
  }
51772
- function peg$f29(id) {
51776
+ function peg$f30(id) {
51773
51777
  return { id, port: null, compass: null };
51774
51778
  }
51775
- function peg$f30(s, rest) {
51779
+ function peg$f31(s, rest) {
51776
51780
  return [s].concat(rest);
51777
51781
  }
51778
- function peg$f31() {
51782
+ function peg$f32() {
51779
51783
  return [];
51780
51784
  }
51781
- function peg$f32(id, stmts) {
51785
+ function peg$f33(id, stmts) {
51782
51786
  return { type: "subgraph", id, stmts };
51783
51787
  }
51784
- function peg$f33(stmts) {
51788
+ function peg$f34(stmts) {
51785
51789
  return { type: "subgraph", id: null, stmts };
51786
51790
  }
51787
- function peg$f34(stmts) {
51791
+ function peg$f35(stmts) {
51788
51792
  return { type: "subgraph", id: null, stmts };
51789
51793
  }
51790
- function peg$f35(first, s) {
51794
+ function peg$f36(first, s) {
51791
51795
  return s;
51792
51796
  }
51793
- function peg$f36(first, rest) {
51797
+ function peg$f37(first, rest) {
51794
51798
  return rest.length > 0 ? first + rest.join("") : first;
51795
51799
  }
51796
- function peg$f37(chars) {
51800
+ function peg$f38(chars) {
51797
51801
  return chars.join("");
51798
51802
  }
51799
- function peg$f38() {
51803
+ function peg$f39() {
51800
51804
  return '"';
51801
51805
  }
51802
- function peg$f39() {
51806
+ function peg$f40() {
51803
51807
  return "";
51804
51808
  }
51805
- function peg$f40(c) {
51809
+ function peg$f41(c) {
51806
51810
  return "\\" + c;
51807
51811
  }
51808
- function peg$f41(content) {
51812
+ function peg$f42(content) {
51809
51813
  return "" + content;
51810
51814
  }
51811
- function peg$f42(chars) {
51815
+ function peg$f43(chars) {
51812
51816
  return chars.join("");
51813
51817
  }
51814
- function peg$f43(nested2, content) {
51818
+ function peg$f44(nested2, content) {
51815
51819
  return "<" + content + ">";
51816
51820
  }
51817
- function peg$f44(n) {
51821
+ function peg$f45(n) {
51818
51822
  return n;
51819
51823
  }
51820
- function peg$f45(first, rest) {
51824
+ function peg$f46(first, rest) {
51821
51825
  return first + rest.join("");
51822
51826
  }
51823
- function peg$f46(s) {
51827
+ function peg$f47(s) {
51824
51828
  return Array.isArray(s) ? s.flat(Infinity).filter((x) => x !== null && x !== void 0).join("") : String(s);
51825
51829
  }
51826
51830
  let peg$currPos = options.peg$currPos | 0;
@@ -51996,9 +52000,9 @@ function peg$parse(input, options) {
51996
52000
  }
51997
52001
  }
51998
52002
  if (s122 !== peg$FAILED) {
51999
- s13 = peg$parse_();
52003
+ s13 = peg$parseGraphEof();
52000
52004
  peg$savedPos = s0;
52001
- s0 = peg$f0(s2, s4, s6, s10);
52005
+ s0 = peg$f0(s2, s4, s6, s10, s13);
52002
52006
  } else {
52003
52007
  peg$currPos = s0;
52004
52008
  s0 = peg$FAILED;
@@ -52028,6 +52032,36 @@ function peg$parse(input, options) {
52028
52032
  }
52029
52033
  return s0;
52030
52034
  }
52035
+ function peg$parseGraphEof() {
52036
+ let s0, s12, s2;
52037
+ s0 = peg$currPos;
52038
+ s12 = [];
52039
+ if (input.length > peg$currPos) {
52040
+ s2 = input.charAt(peg$currPos);
52041
+ peg$currPos++;
52042
+ } else {
52043
+ s2 = peg$FAILED;
52044
+ if (peg$silentFails === 0) {
52045
+ peg$fail(peg$e2);
52046
+ }
52047
+ }
52048
+ while (s2 !== peg$FAILED) {
52049
+ s12.push(s2);
52050
+ if (input.length > peg$currPos) {
52051
+ s2 = input.charAt(peg$currPos);
52052
+ peg$currPos++;
52053
+ } else {
52054
+ s2 = peg$FAILED;
52055
+ if (peg$silentFails === 0) {
52056
+ peg$fail(peg$e2);
52057
+ }
52058
+ }
52059
+ }
52060
+ peg$savedPos = s0;
52061
+ s12 = peg$f2();
52062
+ s0 = s12;
52063
+ return s0;
52064
+ }
52031
52065
  function peg$parseOptStrict() {
52032
52066
  let s0, s12, s2;
52033
52067
  s0 = peg$currPos;
@@ -52035,7 +52069,7 @@ function peg$parse(input, options) {
52035
52069
  if (s12 !== peg$FAILED) {
52036
52070
  s2 = peg$parse_();
52037
52071
  peg$savedPos = s0;
52038
- s0 = peg$f2();
52072
+ s0 = peg$f3();
52039
52073
  } else {
52040
52074
  peg$currPos = s0;
52041
52075
  s0 = peg$FAILED;
@@ -52044,7 +52078,7 @@ function peg$parse(input, options) {
52044
52078
  s0 = peg$currPos;
52045
52079
  s12 = "";
52046
52080
  peg$savedPos = s0;
52047
- s12 = peg$f3();
52081
+ s12 = peg$f4();
52048
52082
  s0 = s12;
52049
52083
  }
52050
52084
  return s0;
@@ -52055,7 +52089,7 @@ function peg$parse(input, options) {
52055
52089
  s12 = peg$parseDigraphKw();
52056
52090
  if (s12 !== peg$FAILED) {
52057
52091
  peg$savedPos = s0;
52058
- s12 = peg$f4();
52092
+ s12 = peg$f5();
52059
52093
  }
52060
52094
  s0 = s12;
52061
52095
  if (s0 === peg$FAILED) {
@@ -52063,7 +52097,7 @@ function peg$parse(input, options) {
52063
52097
  s12 = peg$parseGraphKw();
52064
52098
  if (s12 !== peg$FAILED) {
52065
52099
  peg$savedPos = s0;
52066
- s12 = peg$f5();
52100
+ s12 = peg$f6();
52067
52101
  }
52068
52102
  s0 = s12;
52069
52103
  }
@@ -52076,7 +52110,7 @@ function peg$parse(input, options) {
52076
52110
  if (s12 !== peg$FAILED) {
52077
52111
  s2 = peg$parse_();
52078
52112
  peg$savedPos = s0;
52079
- s0 = peg$f6(s12);
52113
+ s0 = peg$f7(s12);
52080
52114
  } else {
52081
52115
  peg$currPos = s0;
52082
52116
  s0 = peg$FAILED;
@@ -52085,7 +52119,7 @@ function peg$parse(input, options) {
52085
52119
  s0 = peg$currPos;
52086
52120
  s12 = "";
52087
52121
  peg$savedPos = s0;
52088
- s12 = peg$f7();
52122
+ s12 = peg$f8();
52089
52123
  s0 = s12;
52090
52124
  }
52091
52125
  return s0;
@@ -52099,7 +52133,7 @@ function peg$parse(input, options) {
52099
52133
  if (s3 !== peg$FAILED) {
52100
52134
  s4 = peg$parse_();
52101
52135
  peg$savedPos = s2;
52102
- s2 = peg$f8(s3);
52136
+ s2 = peg$f9(s3);
52103
52137
  } else {
52104
52138
  peg$currPos = s2;
52105
52139
  s2 = peg$FAILED;
@@ -52111,14 +52145,14 @@ function peg$parse(input, options) {
52111
52145
  if (s3 !== peg$FAILED) {
52112
52146
  s4 = peg$parse_();
52113
52147
  peg$savedPos = s2;
52114
- s2 = peg$f8(s3);
52148
+ s2 = peg$f9(s3);
52115
52149
  } else {
52116
52150
  peg$currPos = s2;
52117
52151
  s2 = peg$FAILED;
52118
52152
  }
52119
52153
  }
52120
52154
  peg$savedPos = s0;
52121
- s12 = peg$f9(s12);
52155
+ s12 = peg$f10(s12);
52122
52156
  s0 = s12;
52123
52157
  return s0;
52124
52158
  }
@@ -52135,7 +52169,7 @@ function peg$parse(input, options) {
52135
52169
  } else {
52136
52170
  s4 = peg$FAILED;
52137
52171
  if (peg$silentFails === 0) {
52138
- peg$fail(peg$e2);
52172
+ peg$fail(peg$e3);
52139
52173
  }
52140
52174
  }
52141
52175
  if (s4 !== peg$FAILED) {
@@ -52150,7 +52184,7 @@ function peg$parse(input, options) {
52150
52184
  s3 = null;
52151
52185
  }
52152
52186
  peg$savedPos = s0;
52153
- s0 = peg$f10(s12);
52187
+ s0 = peg$f11(s12);
52154
52188
  } else {
52155
52189
  peg$currPos = s0;
52156
52190
  s0 = peg$FAILED;
@@ -52167,7 +52201,7 @@ function peg$parse(input, options) {
52167
52201
  } else {
52168
52202
  s4 = peg$FAILED;
52169
52203
  if (peg$silentFails === 0) {
52170
- peg$fail(peg$e2);
52204
+ peg$fail(peg$e3);
52171
52205
  }
52172
52206
  }
52173
52207
  if (s4 !== peg$FAILED) {
@@ -52182,7 +52216,7 @@ function peg$parse(input, options) {
52182
52216
  s3 = null;
52183
52217
  }
52184
52218
  peg$savedPos = s0;
52185
- s0 = peg$f11(s12);
52219
+ s0 = peg$f12(s12);
52186
52220
  } else {
52187
52221
  peg$currPos = s0;
52188
52222
  s0 = peg$FAILED;
@@ -52201,7 +52235,7 @@ function peg$parse(input, options) {
52201
52235
  s4 = peg$parseAttrListReq();
52202
52236
  if (s4 !== peg$FAILED) {
52203
52237
  peg$savedPos = s0;
52204
- s0 = peg$f12(s12, s3, s4);
52238
+ s0 = peg$f13(s12, s3, s4);
52205
52239
  } else {
52206
52240
  peg$currPos = s0;
52207
52241
  s0 = peg$FAILED;
@@ -52219,7 +52253,7 @@ function peg$parse(input, options) {
52219
52253
  s12 = peg$parseAttrAssignment();
52220
52254
  if (s12 !== peg$FAILED) {
52221
52255
  peg$savedPos = s0;
52222
- s12 = peg$f13(s12);
52256
+ s12 = peg$f14(s12);
52223
52257
  }
52224
52258
  s0 = s12;
52225
52259
  }
@@ -52237,13 +52271,13 @@ function peg$parse(input, options) {
52237
52271
  } else {
52238
52272
  s3 = peg$FAILED;
52239
52273
  if (peg$silentFails === 0) {
52240
- peg$fail(peg$e3);
52274
+ peg$fail(peg$e4);
52241
52275
  }
52242
52276
  }
52243
52277
  if (s3 !== peg$FAILED) {
52244
52278
  s4 = peg$parse_();
52245
52279
  peg$savedPos = s0;
52246
- s0 = peg$f14();
52280
+ s0 = peg$f15();
52247
52281
  } else {
52248
52282
  peg$currPos = s0;
52249
52283
  s0 = peg$FAILED;
@@ -52256,7 +52290,7 @@ function peg$parse(input, options) {
52256
52290
  s0 = peg$currPos;
52257
52291
  s12 = "";
52258
52292
  peg$savedPos = s0;
52259
- s12 = peg$f15();
52293
+ s12 = peg$f16();
52260
52294
  s0 = s12;
52261
52295
  }
52262
52296
  return s0;
@@ -52267,7 +52301,7 @@ function peg$parse(input, options) {
52267
52301
  s12 = peg$parseGraphKw();
52268
52302
  if (s12 !== peg$FAILED) {
52269
52303
  peg$savedPos = s0;
52270
- s12 = peg$f16();
52304
+ s12 = peg$f17();
52271
52305
  }
52272
52306
  s0 = s12;
52273
52307
  if (s0 === peg$FAILED) {
@@ -52275,7 +52309,7 @@ function peg$parse(input, options) {
52275
52309
  s12 = peg$parseNodeKw();
52276
52310
  if (s12 !== peg$FAILED) {
52277
52311
  peg$savedPos = s0;
52278
- s12 = peg$f17();
52312
+ s12 = peg$f18();
52279
52313
  }
52280
52314
  s0 = s12;
52281
52315
  if (s0 === peg$FAILED) {
@@ -52283,7 +52317,7 @@ function peg$parse(input, options) {
52283
52317
  s12 = peg$parseEdgeKw();
52284
52318
  if (s12 !== peg$FAILED) {
52285
52319
  peg$savedPos = s0;
52286
- s12 = peg$f18();
52320
+ s12 = peg$f19();
52287
52321
  }
52288
52322
  s0 = s12;
52289
52323
  }
@@ -52300,7 +52334,7 @@ function peg$parse(input, options) {
52300
52334
  } else {
52301
52335
  s2 = peg$FAILED;
52302
52336
  if (peg$silentFails === 0) {
52303
- peg$fail(peg$e4);
52337
+ peg$fail(peg$e5);
52304
52338
  }
52305
52339
  }
52306
52340
  if (s2 !== peg$FAILED) {
@@ -52313,14 +52347,14 @@ function peg$parse(input, options) {
52313
52347
  } else {
52314
52348
  s6 = peg$FAILED;
52315
52349
  if (peg$silentFails === 0) {
52316
- peg$fail(peg$e5);
52350
+ peg$fail(peg$e6);
52317
52351
  }
52318
52352
  }
52319
52353
  if (s6 !== peg$FAILED) {
52320
52354
  s7 = peg$parseAttrList();
52321
52355
  if (s7 !== peg$FAILED) {
52322
52356
  peg$savedPos = s0;
52323
- s0 = peg$f19(s4, s7);
52357
+ s0 = peg$f20(s4, s7);
52324
52358
  } else {
52325
52359
  peg$currPos = s0;
52326
52360
  s0 = peg$FAILED;
@@ -52342,7 +52376,7 @@ function peg$parse(input, options) {
52342
52376
  s0 = peg$currPos;
52343
52377
  s12 = "";
52344
52378
  peg$savedPos = s0;
52345
- s12 = peg$f20();
52379
+ s12 = peg$f21();
52346
52380
  s0 = s12;
52347
52381
  }
52348
52382
  return s0;
@@ -52362,7 +52396,7 @@ function peg$parse(input, options) {
52362
52396
  } else {
52363
52397
  s6 = peg$FAILED;
52364
52398
  if (peg$silentFails === 0) {
52365
- peg$fail(peg$e6);
52399
+ peg$fail(peg$e7);
52366
52400
  }
52367
52401
  }
52368
52402
  if (s6 !== peg$FAILED) {
@@ -52377,7 +52411,7 @@ function peg$parse(input, options) {
52377
52411
  s5 = null;
52378
52412
  }
52379
52413
  peg$savedPos = s2;
52380
- s2 = peg$f21(s3);
52414
+ s2 = peg$f22(s3);
52381
52415
  } else {
52382
52416
  peg$currPos = s2;
52383
52417
  s2 = peg$FAILED;
@@ -52395,7 +52429,7 @@ function peg$parse(input, options) {
52395
52429
  } else {
52396
52430
  s6 = peg$FAILED;
52397
52431
  if (peg$silentFails === 0) {
52398
- peg$fail(peg$e6);
52432
+ peg$fail(peg$e7);
52399
52433
  }
52400
52434
  }
52401
52435
  if (s6 !== peg$FAILED) {
@@ -52410,14 +52444,14 @@ function peg$parse(input, options) {
52410
52444
  s5 = null;
52411
52445
  }
52412
52446
  peg$savedPos = s2;
52413
- s2 = peg$f21(s3);
52447
+ s2 = peg$f22(s3);
52414
52448
  } else {
52415
52449
  peg$currPos = s2;
52416
52450
  s2 = peg$FAILED;
52417
52451
  }
52418
52452
  }
52419
52453
  peg$savedPos = s0;
52420
- s12 = peg$f22(s12);
52454
+ s12 = peg$f23(s12);
52421
52455
  s0 = s12;
52422
52456
  return s0;
52423
52457
  }
@@ -52433,7 +52467,7 @@ function peg$parse(input, options) {
52433
52467
  } else {
52434
52468
  s3 = peg$FAILED;
52435
52469
  if (peg$silentFails === 0) {
52436
- peg$fail(peg$e3);
52470
+ peg$fail(peg$e4);
52437
52471
  }
52438
52472
  }
52439
52473
  if (s3 !== peg$FAILED) {
@@ -52441,7 +52475,7 @@ function peg$parse(input, options) {
52441
52475
  s5 = peg$parseAtom();
52442
52476
  if (s5 !== peg$FAILED) {
52443
52477
  peg$savedPos = s0;
52444
- s0 = peg$f23(s12, s5);
52478
+ s0 = peg$f24(s12, s5);
52445
52479
  } else {
52446
52480
  peg$currPos = s0;
52447
52481
  s0 = peg$FAILED;
@@ -52468,7 +52502,7 @@ function peg$parse(input, options) {
52468
52502
  s5 = peg$parseAttrList();
52469
52503
  if (s5 !== peg$FAILED) {
52470
52504
  peg$savedPos = s0;
52471
- s0 = peg$f24(s12, s3, s5);
52505
+ s0 = peg$f25(s12, s3, s5);
52472
52506
  } else {
52473
52507
  peg$currPos = s0;
52474
52508
  s0 = peg$FAILED;
@@ -52489,7 +52523,7 @@ function peg$parse(input, options) {
52489
52523
  s12 = peg$parseSubgraph();
52490
52524
  if (s12 !== peg$FAILED) {
52491
52525
  peg$savedPos = s0;
52492
- s12 = peg$f25(s12);
52526
+ s12 = peg$f26(s12);
52493
52527
  }
52494
52528
  s0 = s12;
52495
52529
  if (s0 === peg$FAILED) {
@@ -52497,7 +52531,7 @@ function peg$parse(input, options) {
52497
52531
  s12 = peg$parseNode();
52498
52532
  if (s12 !== peg$FAILED) {
52499
52533
  peg$savedPos = s0;
52500
- s12 = peg$f26(s12);
52534
+ s12 = peg$f27(s12);
52501
52535
  }
52502
52536
  s0 = s12;
52503
52537
  }
@@ -52515,7 +52549,7 @@ function peg$parse(input, options) {
52515
52549
  } else {
52516
52550
  s3 = peg$FAILED;
52517
52551
  if (peg$silentFails === 0) {
52518
- peg$fail(peg$e7);
52552
+ peg$fail(peg$e8);
52519
52553
  }
52520
52554
  }
52521
52555
  if (s3 !== peg$FAILED) {
@@ -52529,7 +52563,7 @@ function peg$parse(input, options) {
52529
52563
  } else {
52530
52564
  s7 = peg$FAILED;
52531
52565
  if (peg$silentFails === 0) {
52532
- peg$fail(peg$e7);
52566
+ peg$fail(peg$e8);
52533
52567
  }
52534
52568
  }
52535
52569
  if (s7 !== peg$FAILED) {
@@ -52537,7 +52571,7 @@ function peg$parse(input, options) {
52537
52571
  s9 = peg$parseAtom();
52538
52572
  if (s9 !== peg$FAILED) {
52539
52573
  peg$savedPos = s0;
52540
- s0 = peg$f27(s12, s5, s9);
52574
+ s0 = peg$f28(s12, s5, s9);
52541
52575
  } else {
52542
52576
  peg$currPos = s0;
52543
52577
  s0 = peg$FAILED;
@@ -52569,7 +52603,7 @@ function peg$parse(input, options) {
52569
52603
  } else {
52570
52604
  s3 = peg$FAILED;
52571
52605
  if (peg$silentFails === 0) {
52572
- peg$fail(peg$e7);
52606
+ peg$fail(peg$e8);
52573
52607
  }
52574
52608
  }
52575
52609
  if (s3 !== peg$FAILED) {
@@ -52577,7 +52611,7 @@ function peg$parse(input, options) {
52577
52611
  s5 = peg$parseAtom();
52578
52612
  if (s5 !== peg$FAILED) {
52579
52613
  peg$savedPos = s0;
52580
- s0 = peg$f28(s12, s5);
52614
+ s0 = peg$f29(s12, s5);
52581
52615
  } else {
52582
52616
  peg$currPos = s0;
52583
52617
  s0 = peg$FAILED;
@@ -52595,7 +52629,7 @@ function peg$parse(input, options) {
52595
52629
  s12 = peg$parseAtom();
52596
52630
  if (s12 !== peg$FAILED) {
52597
52631
  peg$savedPos = s0;
52598
- s12 = peg$f29(s12);
52632
+ s12 = peg$f30(s12);
52599
52633
  }
52600
52634
  s0 = s12;
52601
52635
  }
@@ -52614,7 +52648,7 @@ function peg$parse(input, options) {
52614
52648
  s5 = peg$parseEdgeChain();
52615
52649
  if (s5 !== peg$FAILED) {
52616
52650
  peg$savedPos = s0;
52617
- s0 = peg$f30(s3, s5);
52651
+ s0 = peg$f31(s3, s5);
52618
52652
  } else {
52619
52653
  peg$currPos = s0;
52620
52654
  s0 = peg$FAILED;
@@ -52631,7 +52665,7 @@ function peg$parse(input, options) {
52631
52665
  s0 = peg$currPos;
52632
52666
  s12 = "";
52633
52667
  peg$savedPos = s0;
52634
- s12 = peg$f31();
52668
+ s12 = peg$f32();
52635
52669
  s0 = s12;
52636
52670
  }
52637
52671
  return s0;
@@ -52645,7 +52679,7 @@ function peg$parse(input, options) {
52645
52679
  } else {
52646
52680
  s0 = peg$FAILED;
52647
52681
  if (peg$silentFails === 0) {
52648
- peg$fail(peg$e9);
52682
+ peg$fail(peg$e10);
52649
52683
  }
52650
52684
  }
52651
52685
  if (s0 === peg$FAILED) {
@@ -52655,7 +52689,7 @@ function peg$parse(input, options) {
52655
52689
  } else {
52656
52690
  s0 = peg$FAILED;
52657
52691
  if (peg$silentFails === 0) {
52658
- peg$fail(peg$e10);
52692
+ peg$fail(peg$e11);
52659
52693
  }
52660
52694
  }
52661
52695
  }
@@ -52663,7 +52697,7 @@ function peg$parse(input, options) {
52663
52697
  if (s0 === peg$FAILED) {
52664
52698
  s12 = peg$FAILED;
52665
52699
  if (peg$silentFails === 0) {
52666
- peg$fail(peg$e8);
52700
+ peg$fail(peg$e9);
52667
52701
  }
52668
52702
  }
52669
52703
  return s0;
@@ -52702,7 +52736,7 @@ function peg$parse(input, options) {
52702
52736
  }
52703
52737
  if (s9 !== peg$FAILED) {
52704
52738
  peg$savedPos = s0;
52705
- s0 = peg$f32(s3, s7);
52739
+ s0 = peg$f33(s3, s7);
52706
52740
  } else {
52707
52741
  peg$currPos = s0;
52708
52742
  s0 = peg$FAILED;
@@ -52753,7 +52787,7 @@ function peg$parse(input, options) {
52753
52787
  }
52754
52788
  if (s7 !== peg$FAILED) {
52755
52789
  peg$savedPos = s0;
52756
- s0 = peg$f33(s5);
52790
+ s0 = peg$f34(s5);
52757
52791
  } else {
52758
52792
  peg$currPos = s0;
52759
52793
  s0 = peg$FAILED;
@@ -52797,7 +52831,7 @@ function peg$parse(input, options) {
52797
52831
  }
52798
52832
  if (s5 !== peg$FAILED) {
52799
52833
  peg$savedPos = s0;
52800
- s0 = peg$f34(s3);
52834
+ s0 = peg$f35(s3);
52801
52835
  } else {
52802
52836
  peg$currPos = s0;
52803
52837
  s0 = peg$FAILED;
@@ -52828,7 +52862,7 @@ function peg$parse(input, options) {
52828
52862
  } else {
52829
52863
  s5 = peg$FAILED;
52830
52864
  if (peg$silentFails === 0) {
52831
- peg$fail(peg$e11);
52865
+ peg$fail(peg$e12);
52832
52866
  }
52833
52867
  }
52834
52868
  if (s5 !== peg$FAILED) {
@@ -52836,7 +52870,7 @@ function peg$parse(input, options) {
52836
52870
  s7 = peg$parseQAtom();
52837
52871
  if (s7 !== peg$FAILED) {
52838
52872
  peg$savedPos = s3;
52839
- s3 = peg$f35(s12, s7);
52873
+ s3 = peg$f36(s12, s7);
52840
52874
  } else {
52841
52875
  peg$currPos = s3;
52842
52876
  s3 = peg$FAILED;
@@ -52855,7 +52889,7 @@ function peg$parse(input, options) {
52855
52889
  } else {
52856
52890
  s5 = peg$FAILED;
52857
52891
  if (peg$silentFails === 0) {
52858
- peg$fail(peg$e11);
52892
+ peg$fail(peg$e12);
52859
52893
  }
52860
52894
  }
52861
52895
  if (s5 !== peg$FAILED) {
@@ -52863,7 +52897,7 @@ function peg$parse(input, options) {
52863
52897
  s7 = peg$parseQAtom();
52864
52898
  if (s7 !== peg$FAILED) {
52865
52899
  peg$savedPos = s3;
52866
- s3 = peg$f35(s12, s7);
52900
+ s3 = peg$f36(s12, s7);
52867
52901
  } else {
52868
52902
  peg$currPos = s3;
52869
52903
  s3 = peg$FAILED;
@@ -52874,7 +52908,7 @@ function peg$parse(input, options) {
52874
52908
  }
52875
52909
  }
52876
52910
  peg$savedPos = s0;
52877
- s0 = peg$f36(s12, s2);
52911
+ s0 = peg$f37(s12, s2);
52878
52912
  } else {
52879
52913
  peg$currPos = s0;
52880
52914
  s0 = peg$FAILED;
@@ -52901,7 +52935,7 @@ function peg$parse(input, options) {
52901
52935
  } else {
52902
52936
  s12 = peg$FAILED;
52903
52937
  if (peg$silentFails === 0) {
52904
- peg$fail(peg$e12);
52938
+ peg$fail(peg$e13);
52905
52939
  }
52906
52940
  }
52907
52941
  if (s12 !== peg$FAILED) {
@@ -52917,12 +52951,12 @@ function peg$parse(input, options) {
52917
52951
  } else {
52918
52952
  s3 = peg$FAILED;
52919
52953
  if (peg$silentFails === 0) {
52920
- peg$fail(peg$e12);
52954
+ peg$fail(peg$e13);
52921
52955
  }
52922
52956
  }
52923
52957
  if (s3 !== peg$FAILED) {
52924
52958
  peg$savedPos = s0;
52925
- s0 = peg$f37(s2);
52959
+ s0 = peg$f38(s2);
52926
52960
  } else {
52927
52961
  peg$currPos = s0;
52928
52962
  s0 = peg$FAILED;
@@ -52942,12 +52976,12 @@ function peg$parse(input, options) {
52942
52976
  } else {
52943
52977
  s12 = peg$FAILED;
52944
52978
  if (peg$silentFails === 0) {
52945
- peg$fail(peg$e13);
52979
+ peg$fail(peg$e14);
52946
52980
  }
52947
52981
  }
52948
52982
  if (s12 !== peg$FAILED) {
52949
52983
  peg$savedPos = s0;
52950
- s12 = peg$f38();
52984
+ s12 = peg$f39();
52951
52985
  }
52952
52986
  s0 = s12;
52953
52987
  if (s0 === peg$FAILED) {
@@ -52958,12 +52992,12 @@ function peg$parse(input, options) {
52958
52992
  } else {
52959
52993
  s12 = peg$FAILED;
52960
52994
  if (peg$silentFails === 0) {
52961
- peg$fail(peg$e14);
52995
+ peg$fail(peg$e15);
52962
52996
  }
52963
52997
  }
52964
52998
  if (s12 !== peg$FAILED) {
52965
52999
  peg$savedPos = s0;
52966
- s12 = peg$f39();
53000
+ s12 = peg$f40();
52967
53001
  }
52968
53002
  s0 = s12;
52969
53003
  if (s0 === peg$FAILED) {
@@ -52974,7 +53008,7 @@ function peg$parse(input, options) {
52974
53008
  } else {
52975
53009
  s12 = peg$FAILED;
52976
53010
  if (peg$silentFails === 0) {
52977
- peg$fail(peg$e15);
53011
+ peg$fail(peg$e16);
52978
53012
  }
52979
53013
  }
52980
53014
  if (s12 !== peg$FAILED) {
@@ -52984,12 +53018,12 @@ function peg$parse(input, options) {
52984
53018
  } else {
52985
53019
  s2 = peg$FAILED;
52986
53020
  if (peg$silentFails === 0) {
52987
- peg$fail(peg$e16);
53021
+ peg$fail(peg$e2);
52988
53022
  }
52989
53023
  }
52990
53024
  if (s2 !== peg$FAILED) {
52991
53025
  peg$savedPos = s0;
52992
- s0 = peg$f40(s2);
53026
+ s0 = peg$f41(s2);
52993
53027
  } else {
52994
53028
  peg$currPos = s0;
52995
53029
  s0 = peg$FAILED;
@@ -53038,7 +53072,7 @@ function peg$parse(input, options) {
53038
53072
  }
53039
53073
  if (s3 !== peg$FAILED) {
53040
53074
  peg$savedPos = s0;
53041
- s0 = peg$f41(s2);
53075
+ s0 = peg$f42(s2);
53042
53076
  } else {
53043
53077
  peg$currPos = s0;
53044
53078
  s0 = peg$FAILED;
@@ -53059,7 +53093,7 @@ function peg$parse(input, options) {
53059
53093
  s2 = peg$parseHtmlChar();
53060
53094
  }
53061
53095
  peg$savedPos = s0;
53062
- s12 = peg$f42(s12);
53096
+ s12 = peg$f43(s12);
53063
53097
  s0 = s12;
53064
53098
  return s0;
53065
53099
  }
@@ -53089,7 +53123,7 @@ function peg$parse(input, options) {
53089
53123
  }
53090
53124
  if (s3 !== peg$FAILED) {
53091
53125
  peg$savedPos = s0;
53092
- s0 = peg$f43(s12, s2);
53126
+ s0 = peg$f44(s12, s2);
53093
53127
  } else {
53094
53128
  peg$currPos = s0;
53095
53129
  s0 = peg$FAILED;
@@ -53134,7 +53168,7 @@ function peg$parse(input, options) {
53134
53168
  s2 = peg$parseName();
53135
53169
  if (s2 !== peg$FAILED) {
53136
53170
  peg$savedPos = s0;
53137
- s0 = peg$f44(s2);
53171
+ s0 = peg$f45(s2);
53138
53172
  } else {
53139
53173
  peg$currPos = s0;
53140
53174
  s0 = peg$FAILED;
@@ -53182,7 +53216,7 @@ function peg$parse(input, options) {
53182
53216
  }
53183
53217
  }
53184
53218
  peg$savedPos = s0;
53185
- s0 = peg$f45(s12, s2);
53219
+ s0 = peg$f46(s12, s2);
53186
53220
  } else {
53187
53221
  peg$currPos = s0;
53188
53222
  s0 = peg$FAILED;
@@ -53340,7 +53374,7 @@ function peg$parse(input, options) {
53340
53374
  }
53341
53375
  if (s12 !== peg$FAILED) {
53342
53376
  peg$savedPos = s0;
53343
- s12 = peg$f46(s12);
53377
+ s12 = peg$f47(s12);
53344
53378
  }
53345
53379
  s0 = s12;
53346
53380
  return s0;
@@ -54615,7 +54649,7 @@ function peg$parse(input, options) {
54615
54649
  } else {
54616
54650
  s5 = peg$FAILED;
54617
54651
  if (peg$silentFails === 0) {
54618
- peg$fail(peg$e16);
54652
+ peg$fail(peg$e2);
54619
54653
  }
54620
54654
  }
54621
54655
  if (s5 !== peg$FAILED) {
@@ -54657,7 +54691,7 @@ function peg$parse(input, options) {
54657
54691
  } else {
54658
54692
  s5 = peg$FAILED;
54659
54693
  if (peg$silentFails === 0) {
54660
- peg$fail(peg$e16);
54694
+ peg$fail(peg$e2);
54661
54695
  }
54662
54696
  }
54663
54697
  if (s5 !== peg$FAILED) {
@@ -54747,7 +54781,7 @@ function peg$parse(input, options) {
54747
54781
  } else {
54748
54782
  s4 = peg$FAILED;
54749
54783
  if (peg$silentFails === 0) {
54750
- peg$fail(peg$e16);
54784
+ peg$fail(peg$e2);
54751
54785
  }
54752
54786
  }
54753
54787
  peg$silentFails--;
@@ -54824,7 +54858,7 @@ function peg$parse(input, options) {
54824
54858
  } else {
54825
54859
  s4 = peg$FAILED;
54826
54860
  if (peg$silentFails === 0) {
54827
- peg$fail(peg$e16);
54861
+ peg$fail(peg$e2);
54828
54862
  }
54829
54863
  }
54830
54864
  peg$silentFails--;
@@ -55611,8 +55645,9 @@ function parse(src) {
55611
55645
  }
55612
55646
  throw err;
55613
55647
  }
55648
+ const lexed = src.slice(0, ast.end);
55614
55649
  try {
55615
- validateEdgeOperators(src, ast.directed);
55650
+ validateEdgeOperators(lexed, ast.directed);
55616
55651
  } catch (err) {
55617
55652
  const offset = err instanceof ParseError ? err.location.offset : void 0;
55618
55653
  if (offset !== void 0) {
@@ -55621,7 +55656,7 @@ function parse(src) {
55621
55656
  }
55622
55657
  throw err;
55623
55658
  }
55624
- warnNumberAmbiguities(src, src.length);
55659
+ warnNumberAmbiguities(lexed, lexed.length);
55625
55660
  return buildFromAst(ast);
55626
55661
  }
55627
55662