@gmb/bitmark-parser-generator 3.21.0 → 3.23.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 (157) hide show
  1. package/dist/browser/bitmark-parser-generator.min.js +1 -1
  2. package/dist/browser/bundle-report.html +2 -2
  3. package/dist/cjs/ast/Builder.js +65 -61
  4. package/dist/cjs/ast/Builder.js.map +1 -1
  5. package/dist/cjs/breakscaping/Breakscape.js +37 -13
  6. package/dist/cjs/breakscaping/Breakscape.js.map +1 -1
  7. package/dist/cjs/config/ConfigHydrator.js +4 -2
  8. package/dist/cjs/config/ConfigHydrator.js.map +1 -1
  9. package/dist/cjs/config/raw/bits.js +6 -6
  10. package/dist/cjs/config/raw/bits.js.map +1 -1
  11. package/dist/cjs/config/raw/cardSets.js +50 -18
  12. package/dist/cjs/config/raw/cardSets.js.map +1 -1
  13. package/dist/cjs/config/raw/groups.js +2 -2
  14. package/dist/cjs/config/raw/resources.js +3 -0
  15. package/dist/cjs/config/raw/resources.js.map +1 -1
  16. package/dist/cjs/generated/build-info.js +1 -1
  17. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js +106 -221
  18. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  19. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +4 -5
  20. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/cjs/model/config/enum/CardSetConfigKey.js +4 -2
  23. package/dist/cjs/model/config/enum/CardSetConfigKey.js.map +1 -1
  24. package/dist/cjs/model/config/enum/ConfigKey.js +4 -3
  25. package/dist/cjs/model/config/enum/ConfigKey.js.map +1 -1
  26. package/dist/cjs/model/config/enum/ResourceConfigKey.js +1 -0
  27. package/dist/cjs/model/config/enum/ResourceConfigKey.js.map +1 -1
  28. package/dist/cjs/model/enum/TextFormat.js +2 -1
  29. package/dist/cjs/model/enum/TextFormat.js.map +1 -1
  30. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js +2 -2
  31. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  32. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js +2 -2
  33. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  34. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  35. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js +12 -0
  36. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  37. package/dist/cjs/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js +4 -1
  38. package/dist/cjs/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
  39. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +80 -69
  40. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  41. package/dist/cjs/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js +4 -1
  42. package/dist/cjs/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
  43. package/dist/cjs/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js +7 -2
  44. package/dist/cjs/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
  45. package/dist/cjs/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js +4 -1
  46. package/dist/cjs/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
  47. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js +4 -1
  48. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
  49. package/dist/cjs/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js +4 -1
  50. package/dist/cjs/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js.map +1 -1
  51. package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +15 -10
  52. package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
  53. package/dist/cjs/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js +7 -2
  54. package/dist/cjs/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
  55. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +4 -1
  56. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  57. package/dist/cjs/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js +4 -1
  58. package/dist/cjs/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js.map +1 -1
  59. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js +4 -1
  60. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
  61. package/dist/esm/ast/Builder.js +65 -61
  62. package/dist/esm/ast/Builder.js.map +1 -1
  63. package/dist/esm/breakscaping/Breakscape.js +37 -13
  64. package/dist/esm/breakscaping/Breakscape.js.map +1 -1
  65. package/dist/esm/config/ConfigHydrator.js +4 -2
  66. package/dist/esm/config/ConfigHydrator.js.map +1 -1
  67. package/dist/esm/config/raw/bits.js +6 -6
  68. package/dist/esm/config/raw/bits.js.map +1 -1
  69. package/dist/esm/config/raw/cardSets.js +50 -18
  70. package/dist/esm/config/raw/cardSets.js.map +1 -1
  71. package/dist/esm/config/raw/groups.js +2 -2
  72. package/dist/esm/config/raw/resources.js +3 -0
  73. package/dist/esm/config/raw/resources.js.map +1 -1
  74. package/dist/esm/generated/build-info.js +1 -1
  75. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js +106 -221
  76. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  77. package/dist/esm/generator/bitmark/BitmarkGenerator.js +4 -5
  78. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  79. package/dist/esm/index.js.map +1 -1
  80. package/dist/esm/model/config/enum/CardSetConfigKey.js +4 -2
  81. package/dist/esm/model/config/enum/CardSetConfigKey.js.map +1 -1
  82. package/dist/esm/model/config/enum/ConfigKey.js +4 -3
  83. package/dist/esm/model/config/enum/ConfigKey.js.map +1 -1
  84. package/dist/esm/model/config/enum/ResourceConfigKey.js +1 -0
  85. package/dist/esm/model/config/enum/ResourceConfigKey.js.map +1 -1
  86. package/dist/esm/model/enum/TextFormat.js +2 -1
  87. package/dist/esm/model/enum/TextFormat.js.map +1 -1
  88. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js +2 -2
  89. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  90. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js +2 -2
  91. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  92. package/dist/esm/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  93. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js +12 -0
  94. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  95. package/dist/esm/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js +4 -1
  96. package/dist/esm/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
  97. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +80 -69
  98. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  99. package/dist/esm/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js +4 -1
  100. package/dist/esm/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
  101. package/dist/esm/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js +7 -2
  102. package/dist/esm/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
  103. package/dist/esm/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js +4 -1
  104. package/dist/esm/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
  105. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js +4 -1
  106. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
  107. package/dist/esm/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js +4 -1
  108. package/dist/esm/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js.map +1 -1
  109. package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +16 -11
  110. package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
  111. package/dist/esm/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js +7 -2
  112. package/dist/esm/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
  113. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +4 -1
  114. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  115. package/dist/esm/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js +4 -1
  116. package/dist/esm/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js.map +1 -1
  117. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js +4 -1
  118. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
  119. package/dist/types/ast/Builder.d.ts +2 -16
  120. package/dist/types/ast/Builder.d.ts.map +1 -1
  121. package/dist/types/breakscaping/Breakscape.d.ts.map +1 -1
  122. package/dist/types/config/ConfigHydrator.d.ts.map +1 -1
  123. package/dist/types/config/raw/cardSets.d.ts.map +1 -1
  124. package/dist/types/config/raw/resources.d.ts.map +1 -1
  125. package/dist/types/generated/parser/bitmark/bitmark-peggy-parser.d.ts.map +1 -1
  126. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +1 -1
  127. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  128. package/dist/types/index.d.ts +1 -1
  129. package/dist/types/index.d.ts.map +1 -1
  130. package/dist/types/model/ast/Nodes.d.ts +1 -2
  131. package/dist/types/model/ast/Nodes.d.ts.map +1 -1
  132. package/dist/types/model/config/enum/CardSetConfigKey.d.ts +4 -4
  133. package/dist/types/model/config/enum/CardSetConfigKey.d.ts.map +1 -1
  134. package/dist/types/model/config/enum/ConfigKey.d.ts +2 -2
  135. package/dist/types/model/config/enum/ConfigKey.d.ts.map +1 -1
  136. package/dist/types/model/config/enum/ResourceConfigKey.d.ts +3 -0
  137. package/dist/types/model/config/enum/ResourceConfigKey.d.ts.map +1 -1
  138. package/dist/types/model/enum/TextFormat.d.ts +2 -0
  139. package/dist/types/model/enum/TextFormat.d.ts.map +1 -1
  140. package/dist/types/model/json/BitJson.d.ts +4 -13
  141. package/dist/types/model/json/BitJson.d.ts.map +1 -1
  142. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +1 -2
  143. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
  144. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts.map +1 -1
  145. package/dist/types/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.d.ts.map +1 -1
  146. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  147. package/dist/types/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.d.ts.map +1 -1
  148. package/dist/types/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.d.ts.map +1 -1
  149. package/dist/types/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.d.ts.map +1 -1
  150. package/dist/types/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.d.ts.map +1 -1
  151. package/dist/types/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.d.ts.map +1 -1
  152. package/dist/types/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.d.ts.map +1 -1
  153. package/dist/types/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.d.ts.map +1 -1
  154. package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts.map +1 -1
  155. package/dist/types/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.d.ts.map +1 -1
  156. package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.d.ts.map +1 -1
  157. package/package.json +14 -3
@@ -1653,36 +1653,24 @@ function peg$parse(input, options) {
1653
1653
  var s0, s1, s2, s3, s4;
1654
1654
  s0 = peg$currPos;
1655
1655
  s1 = peg$currPos;
1656
- if (input.substr(peg$currPos, 3) === peg$c12) {
1657
- s2 = peg$c12;
1658
- peg$currPos += 3;
1656
+ s2 = peg$parseFooterDividerText();
1657
+ if (s2 === peg$FAILED) {
1658
+ s2 = null;
1659
+ }
1660
+ s3 = peg$currPos;
1661
+ peg$silentFails++;
1662
+ s4 = peg$parseWEOL();
1663
+ peg$silentFails--;
1664
+ if (s4 !== peg$FAILED) {
1665
+ peg$currPos = s3;
1666
+ s3 = undefined;
1659
1667
  }
1660
1668
  else {
1661
- s2 = peg$FAILED;
1662
- if (peg$silentFails === 0) {
1663
- peg$fail(peg$e14);
1664
- }
1669
+ s3 = peg$FAILED;
1665
1670
  }
1666
- if (s2 !== peg$FAILED) {
1667
- s3 = peg$currPos;
1668
- peg$silentFails++;
1669
- s4 = peg$parseWEOL();
1670
- peg$silentFails--;
1671
- if (s4 !== peg$FAILED) {
1672
- peg$currPos = s3;
1673
- s3 = undefined;
1674
- }
1675
- else {
1676
- s3 = peg$FAILED;
1677
- }
1678
- if (s3 !== peg$FAILED) {
1679
- s2 = [s2, s3];
1680
- s1 = s2;
1681
- }
1682
- else {
1683
- peg$currPos = s1;
1684
- s1 = peg$FAILED;
1685
- }
1671
+ if (s3 !== peg$FAILED) {
1672
+ s2 = [s2, s3];
1673
+ s1 = s2;
1686
1674
  }
1687
1675
  else {
1688
1676
  peg$currPos = s1;
@@ -1696,191 +1684,14 @@ function peg$parse(input, options) {
1696
1684
  return s0;
1697
1685
  }
1698
1686
  function peg$parseCards_V1() {
1699
- var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
1687
+ var s0, s1;
1700
1688
  s0 = peg$currPos;
1701
- s1 = peg$currPos;
1702
- peg$silentFails++;
1703
- s2 = peg$currPos;
1704
- if (input.substr(peg$currPos, 3) === peg$c12) {
1705
- s3 = peg$c12;
1706
- peg$currPos += 3;
1707
- }
1708
- else {
1709
- s3 = peg$FAILED;
1710
- if (peg$silentFails === 0) {
1711
- peg$fail(peg$e14);
1712
- }
1713
- }
1714
- if (s3 !== peg$FAILED) {
1715
- s4 = [];
1716
- s5 = peg$parseWS();
1717
- while (s5 !== peg$FAILED) {
1718
- s4.push(s5);
1719
- s5 = peg$parseWS();
1720
- }
1721
- s5 = [];
1722
- s6 = peg$currPos;
1723
- s7 = peg$currPos;
1724
- peg$silentFails++;
1725
- s8 = peg$currPos;
1726
- s9 = peg$parseNL();
1727
- if (s9 !== peg$FAILED) {
1728
- if (input.substr(peg$currPos, 3) === peg$c12) {
1729
- s10 = peg$c12;
1730
- peg$currPos += 3;
1731
- }
1732
- else {
1733
- s10 = peg$FAILED;
1734
- if (peg$silentFails === 0) {
1735
- peg$fail(peg$e14);
1736
- }
1737
- }
1738
- if (s10 !== peg$FAILED) {
1739
- s9 = [s9, s10];
1740
- s8 = s9;
1741
- }
1742
- else {
1743
- peg$currPos = s8;
1744
- s8 = peg$FAILED;
1745
- }
1746
- }
1747
- else {
1748
- peg$currPos = s8;
1749
- s8 = peg$FAILED;
1750
- }
1751
- peg$silentFails--;
1752
- if (s8 === peg$FAILED) {
1753
- s7 = undefined;
1754
- }
1755
- else {
1756
- peg$currPos = s7;
1757
- s7 = peg$FAILED;
1758
- }
1759
- if (s7 !== peg$FAILED) {
1760
- if (input.length > peg$currPos) {
1761
- s8 = input.charAt(peg$currPos);
1762
- peg$currPos++;
1763
- }
1764
- else {
1765
- s8 = peg$FAILED;
1766
- if (peg$silentFails === 0) {
1767
- peg$fail(peg$e6);
1768
- }
1769
- }
1770
- if (s8 !== peg$FAILED) {
1771
- s7 = [s7, s8];
1772
- s6 = s7;
1773
- }
1774
- else {
1775
- peg$currPos = s6;
1776
- s6 = peg$FAILED;
1777
- }
1778
- }
1779
- else {
1780
- peg$currPos = s6;
1781
- s6 = peg$FAILED;
1782
- }
1783
- while (s6 !== peg$FAILED) {
1784
- s5.push(s6);
1785
- s6 = peg$currPos;
1786
- s7 = peg$currPos;
1787
- peg$silentFails++;
1788
- s8 = peg$currPos;
1789
- s9 = peg$parseNL();
1790
- if (s9 !== peg$FAILED) {
1791
- if (input.substr(peg$currPos, 3) === peg$c12) {
1792
- s10 = peg$c12;
1793
- peg$currPos += 3;
1794
- }
1795
- else {
1796
- s10 = peg$FAILED;
1797
- if (peg$silentFails === 0) {
1798
- peg$fail(peg$e14);
1799
- }
1800
- }
1801
- if (s10 !== peg$FAILED) {
1802
- s9 = [s9, s10];
1803
- s8 = s9;
1804
- }
1805
- else {
1806
- peg$currPos = s8;
1807
- s8 = peg$FAILED;
1808
- }
1809
- }
1810
- else {
1811
- peg$currPos = s8;
1812
- s8 = peg$FAILED;
1813
- }
1814
- peg$silentFails--;
1815
- if (s8 === peg$FAILED) {
1816
- s7 = undefined;
1817
- }
1818
- else {
1819
- peg$currPos = s7;
1820
- s7 = peg$FAILED;
1821
- }
1822
- if (s7 !== peg$FAILED) {
1823
- if (input.length > peg$currPos) {
1824
- s8 = input.charAt(peg$currPos);
1825
- peg$currPos++;
1826
- }
1827
- else {
1828
- s8 = peg$FAILED;
1829
- if (peg$silentFails === 0) {
1830
- peg$fail(peg$e6);
1831
- }
1832
- }
1833
- if (s8 !== peg$FAILED) {
1834
- s7 = [s7, s8];
1835
- s6 = s7;
1836
- }
1837
- else {
1838
- peg$currPos = s6;
1839
- s6 = peg$FAILED;
1840
- }
1841
- }
1842
- else {
1843
- peg$currPos = s6;
1844
- s6 = peg$FAILED;
1845
- }
1846
- }
1847
- s6 = peg$parseEOF();
1848
- if (s6 !== peg$FAILED) {
1849
- s3 = [s3, s4, s5, s6];
1850
- s2 = s3;
1851
- }
1852
- else {
1853
- peg$currPos = s2;
1854
- s2 = peg$FAILED;
1855
- }
1856
- }
1857
- else {
1858
- peg$currPos = s2;
1859
- s2 = peg$FAILED;
1860
- }
1861
- peg$silentFails--;
1862
- if (s2 === peg$FAILED) {
1863
- s1 = undefined;
1864
- }
1865
- else {
1866
- peg$currPos = s1;
1867
- s1 = peg$FAILED;
1868
- }
1689
+ s1 = peg$parseCardLineOrDivider_V1();
1869
1690
  if (s1 !== peg$FAILED) {
1870
- s2 = peg$parseCardLineOrDivider_V1();
1871
- if (s2 !== peg$FAILED) {
1872
- peg$savedPos = s0;
1873
- s0 = peg$f28(s2);
1874
- }
1875
- else {
1876
- peg$currPos = s0;
1877
- s0 = peg$FAILED;
1878
- }
1879
- }
1880
- else {
1881
- peg$currPos = s0;
1882
- s0 = peg$FAILED;
1691
+ peg$savedPos = s0;
1692
+ s1 = peg$f28(s1);
1883
1693
  }
1694
+ s0 = s1;
1884
1695
  return s0;
1885
1696
  }
1886
1697
  function peg$parseCardLineOrDivider_V1() {
@@ -1899,6 +1710,9 @@ function peg$parse(input, options) {
1899
1710
  }
1900
1711
  if (s2 !== peg$FAILED) {
1901
1712
  s3 = peg$parseWNL();
1713
+ if (s3 === peg$FAILED) {
1714
+ s3 = peg$parseWEOL();
1715
+ }
1902
1716
  if (s3 !== peg$FAILED) {
1903
1717
  s2 = [s2, s3];
1904
1718
  s1 = s2;
@@ -1926,6 +1740,9 @@ function peg$parse(input, options) {
1926
1740
  }
1927
1741
  if (s2 !== peg$FAILED) {
1928
1742
  s3 = peg$parseWNL();
1743
+ if (s3 === peg$FAILED) {
1744
+ s3 = peg$parseWEOL();
1745
+ }
1929
1746
  if (s3 !== peg$FAILED) {
1930
1747
  s2 = [s2, s3];
1931
1748
  s1 = s2;
@@ -1953,6 +1770,9 @@ function peg$parse(input, options) {
1953
1770
  }
1954
1771
  if (s2 !== peg$FAILED) {
1955
1772
  s3 = peg$parseWNL();
1773
+ if (s3 === peg$FAILED) {
1774
+ s3 = peg$parseWEOL();
1775
+ }
1956
1776
  if (s3 !== peg$FAILED) {
1957
1777
  s2 = [s2, s3];
1958
1778
  s1 = s2;
@@ -1979,31 +1799,96 @@ function peg$parse(input, options) {
1979
1799
  return s0;
1980
1800
  }
1981
1801
  function peg$parseCardLine_V1() {
1982
- var s0, s1, s2, s3, s4;
1802
+ var s0, s1, s2, s3, s4, s5;
1983
1803
  s0 = peg$currPos;
1984
1804
  s1 = peg$currPos;
1805
+ peg$silentFails++;
1985
1806
  s2 = peg$currPos;
1986
- s3 = peg$parseLine();
1987
- s4 = peg$parseNL();
1988
- if (s4 !== peg$FAILED) {
1989
- s3 = [s3, s4];
1990
- s2 = s3;
1807
+ s3 = peg$parseFooterDividerText();
1808
+ if (s3 !== peg$FAILED) {
1809
+ s4 = peg$parseWEOL();
1810
+ if (s4 !== peg$FAILED) {
1811
+ s3 = [s3, s4];
1812
+ s2 = s3;
1813
+ }
1814
+ else {
1815
+ peg$currPos = s2;
1816
+ s2 = peg$FAILED;
1817
+ }
1991
1818
  }
1992
1819
  else {
1993
1820
  peg$currPos = s2;
1994
1821
  s2 = peg$FAILED;
1995
1822
  }
1996
- if (s2 !== peg$FAILED) {
1997
- s1 = input.substring(s1, peg$currPos);
1823
+ peg$silentFails--;
1824
+ if (s2 === peg$FAILED) {
1825
+ s1 = undefined;
1998
1826
  }
1999
1827
  else {
2000
- s1 = s2;
1828
+ peg$currPos = s1;
1829
+ s1 = peg$FAILED;
2001
1830
  }
2002
1831
  if (s1 !== peg$FAILED) {
2003
- peg$savedPos = s0;
2004
- s1 = peg$f30(s1);
1832
+ s2 = peg$currPos;
1833
+ s3 = peg$currPos;
1834
+ s4 = peg$parseLine();
1835
+ s5 = peg$parseNL();
1836
+ if (s5 !== peg$FAILED) {
1837
+ s4 = [s4, s5];
1838
+ s3 = s4;
1839
+ }
1840
+ else {
1841
+ peg$currPos = s3;
1842
+ s3 = peg$FAILED;
1843
+ }
1844
+ if (s3 === peg$FAILED) {
1845
+ s3 = peg$currPos;
1846
+ s4 = [];
1847
+ s5 = peg$parseChar();
1848
+ if (s5 !== peg$FAILED) {
1849
+ while (s5 !== peg$FAILED) {
1850
+ s4.push(s5);
1851
+ s5 = peg$parseChar();
1852
+ }
1853
+ }
1854
+ else {
1855
+ s4 = peg$FAILED;
1856
+ }
1857
+ if (s4 !== peg$FAILED) {
1858
+ s5 = peg$parseEOL();
1859
+ if (s5 !== peg$FAILED) {
1860
+ s4 = [s4, s5];
1861
+ s3 = s4;
1862
+ }
1863
+ else {
1864
+ peg$currPos = s3;
1865
+ s3 = peg$FAILED;
1866
+ }
1867
+ }
1868
+ else {
1869
+ peg$currPos = s3;
1870
+ s3 = peg$FAILED;
1871
+ }
1872
+ }
1873
+ if (s3 !== peg$FAILED) {
1874
+ s2 = input.substring(s2, peg$currPos);
1875
+ }
1876
+ else {
1877
+ s2 = s3;
1878
+ }
1879
+ if (s2 !== peg$FAILED) {
1880
+ peg$savedPos = s0;
1881
+ s0 = peg$f30(s2);
1882
+ }
1883
+ else {
1884
+ peg$currPos = s0;
1885
+ s0 = peg$FAILED;
1886
+ }
1887
+ }
1888
+ else {
1889
+ peg$currPos = s0;
1890
+ s0 = peg$FAILED;
2005
1891
  }
2006
- s0 = s1;
2007
1892
  return s0;
2008
1893
  }
2009
1894
  function peg$parsecardContent() {