@gmb/bitmark-parser-generator 1.5.10 → 1.5.12

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 (100) 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 +3 -3
  4. package/dist/cjs/ast/Builder.js.map +1 -1
  5. package/dist/cjs/config/raw/bits.js +75 -3
  6. package/dist/cjs/config/raw/bits.js.map +1 -1
  7. package/dist/cjs/config/raw/properties.js +20 -5
  8. package/dist/cjs/config/raw/properties.js.map +1 -1
  9. package/dist/cjs/generated/build-info.js +1 -1
  10. package/dist/cjs/generated/parser/text/text-peggy-parser.js +762 -374
  11. package/dist/cjs/generated/parser/text/text-peggy-parser.js.map +1 -1
  12. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +24 -7
  13. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  14. package/dist/cjs/generator/json/JsonGenerator.js +51 -23
  15. package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
  16. package/dist/cjs/generator/text/TextGenerator.js +55 -51
  17. package/dist/cjs/generator/text/TextGenerator.js.map +1 -1
  18. package/dist/cjs/model/ast/NodeType.js +7 -1
  19. package/dist/cjs/model/ast/NodeType.js.map +1 -1
  20. package/dist/cjs/model/config/enum/PropertyConfigKey.js +7 -4
  21. package/dist/cjs/model/config/enum/PropertyConfigKey.js.map +1 -1
  22. package/dist/cjs/model/enum/BitType.js +3 -0
  23. package/dist/cjs/model/enum/BitType.js.map +1 -1
  24. package/dist/cjs/model/enum/PropertyTag.js +7 -4
  25. package/dist/cjs/model/enum/PropertyTag.js.map +1 -1
  26. package/dist/cjs/model/enum/TextMarkType.js +13 -2
  27. package/dist/cjs/model/enum/TextMarkType.js.map +1 -1
  28. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js +2 -2
  29. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  30. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +20 -10
  31. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  32. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +13 -2
  33. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  34. package/dist/cjs/parser/json/JsonParser.js +17 -7
  35. package/dist/cjs/parser/json/JsonParser.js.map +1 -1
  36. package/dist/esm/ast/Builder.js +3 -3
  37. package/dist/esm/ast/Builder.js.map +1 -1
  38. package/dist/esm/config/raw/bits.js +75 -3
  39. package/dist/esm/config/raw/bits.js.map +1 -1
  40. package/dist/esm/config/raw/properties.js +20 -5
  41. package/dist/esm/config/raw/properties.js.map +1 -1
  42. package/dist/esm/generated/build-info.js +1 -1
  43. package/dist/esm/generated/parser/text/text-peggy-parser.js +762 -374
  44. package/dist/esm/generated/parser/text/text-peggy-parser.js.map +1 -1
  45. package/dist/esm/generator/bitmark/BitmarkGenerator.js +24 -7
  46. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  47. package/dist/esm/generator/json/JsonGenerator.js +51 -23
  48. package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
  49. package/dist/esm/generator/text/TextGenerator.js +55 -51
  50. package/dist/esm/generator/text/TextGenerator.js.map +1 -1
  51. package/dist/esm/model/ast/NodeType.js +7 -1
  52. package/dist/esm/model/ast/NodeType.js.map +1 -1
  53. package/dist/esm/model/config/enum/PropertyConfigKey.js +7 -4
  54. package/dist/esm/model/config/enum/PropertyConfigKey.js.map +1 -1
  55. package/dist/esm/model/enum/BitType.js +3 -0
  56. package/dist/esm/model/enum/BitType.js.map +1 -1
  57. package/dist/esm/model/enum/PropertyTag.js +7 -4
  58. package/dist/esm/model/enum/PropertyTag.js.map +1 -1
  59. package/dist/esm/model/enum/TextMarkType.js +13 -2
  60. package/dist/esm/model/enum/TextMarkType.js.map +1 -1
  61. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js +2 -2
  62. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  63. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +20 -10
  64. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  65. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +13 -2
  66. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  67. package/dist/esm/parser/json/JsonParser.js +17 -7
  68. package/dist/esm/parser/json/JsonParser.js.map +1 -1
  69. package/dist/types/ast/Builder.d.ts +4 -0
  70. package/dist/types/ast/Builder.d.ts.map +1 -1
  71. package/dist/types/config/raw/bits.d.ts.map +1 -1
  72. package/dist/types/config/raw/properties.d.ts.map +1 -1
  73. package/dist/types/generated/parser/text/text-peggy-parser.d.ts.map +1 -1
  74. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +1 -1
  75. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  76. package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
  77. package/dist/types/generator/text/TextGenerator.d.ts.map +1 -1
  78. package/dist/types/model/ast/NodeType.d.ts +14 -2
  79. package/dist/types/model/ast/NodeType.d.ts.map +1 -1
  80. package/dist/types/model/ast/Nodes.d.ts +4 -0
  81. package/dist/types/model/ast/Nodes.d.ts.map +1 -1
  82. package/dist/types/model/config/enum/ConfigKey.d.ts +14 -8
  83. package/dist/types/model/config/enum/ConfigKey.d.ts.map +1 -1
  84. package/dist/types/model/config/enum/PropertyConfigKey.d.ts +21 -12
  85. package/dist/types/model/config/enum/PropertyConfigKey.d.ts.map +1 -1
  86. package/dist/types/model/enum/BitType.d.ts +6 -0
  87. package/dist/types/model/enum/BitType.d.ts.map +1 -1
  88. package/dist/types/model/enum/PropertyTag.d.ts +14 -8
  89. package/dist/types/model/enum/PropertyTag.d.ts.map +1 -1
  90. package/dist/types/model/enum/TextMarkType.d.ts +26 -4
  91. package/dist/types/model/enum/TextMarkType.d.ts.map +1 -1
  92. package/dist/types/model/json/BitJson.d.ts +6 -1
  93. package/dist/types/model/json/BitJson.d.ts.map +1 -1
  94. package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts.map +1 -1
  95. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +1 -1
  96. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
  97. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  98. package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts.map +1 -1
  99. package/dist/types/parser/json/JsonParser.d.ts.map +1 -1
  100. package/package.json +13 -13
@@ -748,11 +748,22 @@ class BitmarkGenerator {
748
748
  // This is a resource, so handle it with the common code
749
749
  this.writeResource(resource);
750
750
  }
751
+ // bitmarkAst -> bits -> bitsValue -> posterImage
751
752
  // bitmarkAst -> bits -> bitsValue -> resource -> posterImage
752
- enter_posterImage(node, _parent, _route) {
753
- const posterImage = node.value;
754
- if (posterImage && posterImage.value) {
755
- this.writeProperty('posterImage', posterImage.value);
753
+ enter_posterImage(node, parent, _route) {
754
+ if ((parent === null || parent === void 0 ? void 0 : parent.key) === NodeType.bitsValue) {
755
+ // Bit poster image
756
+ const posterImage = node.value;
757
+ if (posterImage) {
758
+ this.writeProperty('posterImage', posterImage);
759
+ }
760
+ }
761
+ else {
762
+ // Resource poster image
763
+ const posterImage = node.value;
764
+ if (posterImage && posterImage.value) {
765
+ this.writeProperty('posterImage', posterImage.value);
766
+ }
756
767
  }
757
768
  }
758
769
  // bitmarkAst -> bits -> bitsValue -> resource -> thumbnails
@@ -1010,7 +1021,13 @@ class BitmarkGenerator {
1010
1021
  this.writeProperty('alt', node.value);
1011
1022
  }
1012
1023
  leaf_zoomDisabled(node, _parent, _route) {
1013
- this.writeProperty('zoomDisabled', node.value);
1024
+ const bitType = this.getBitType(_route);
1025
+ if (Config.isOfBitType(bitType, [BitType.imageSeparator, BitType.pageBanner])) {
1026
+ this.writeProperty('zoomDisabled', node.value, undefined, false, true);
1027
+ }
1028
+ else {
1029
+ this.writeProperty('zoomDisabled', node.value, undefined, true, false);
1030
+ }
1014
1031
  }
1015
1032
  leaf_license(node, _parent, _route) {
1016
1033
  this.writeProperty('license', node.value);
@@ -1193,10 +1210,10 @@ class BitmarkGenerator {
1193
1210
  }
1194
1211
  writeCardSetStart() {
1195
1212
  if (this.options.cardSetVersion === CardSetVersion.v1) {
1196
- this.write('===');
1213
+ this.write('\n===');
1197
1214
  }
1198
1215
  else {
1199
- this.write('====');
1216
+ this.write('\n====');
1200
1217
  }
1201
1218
  }
1202
1219
  writeCardSetEnd() {
@@ -1 +1 @@
1
- {"version":3,"file":"BitmarkGenerator.js","sourceRoot":"","sources":["../../../../src/generator/bitmark/BitmarkGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitmarkGenerator.js","sourceRoot":"","sources":["../../../../src/generator/bitmark/BitmarkGenerator.ts"],"names":[],"mappings":"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"}
@@ -693,33 +693,32 @@ class JsonGenerator {
693
693
  }
694
694
  // bitmarkAst -> bits -> bitsValue -> cardNode -> heading
695
695
  enter_heading(node, _parent, _route) {
696
- var _a, _b;
696
+ var _a;
697
697
  const heading = node.value;
698
- // Ensure the heading is valid for writing out (it will be valid, but if it is empty, it should not be written)
699
- let valid = false;
700
- if (heading && heading.forKeys /*&& heading.forValues && heading.forValues.length > 0*/) {
701
- valid = true;
702
- }
703
- if (!valid)
704
- return false;
698
+ // Check if the heading is for a match or a match matrix
699
+ const bitType = this.getBitType(_route);
700
+ const isMatrix = Config.isOfBitType(bitType, BitType.matchMatrix);
705
701
  // Create the heading
706
702
  const headingJson = {
707
703
  forKeys: (_a = Breakscape.unbreakscape(heading.forKeys)) !== null && _a !== void 0 ? _a : '',
708
704
  };
709
- // TODO: Should probably check wether bit is a match or a matrix and add a string for match and array for matrix
710
- if (Array.isArray(heading.forValues)) {
711
- if (heading.forValues.length > 1) {
712
- headingJson.forValues = Breakscape.unbreakscape(heading.forValues);
713
- }
714
- else if (heading.forValues.length === 1) {
715
- headingJson.forValues = Breakscape.unbreakscape(heading.forValues[0]);
716
- }
717
- else {
718
- headingJson.forValues = Breakscape.unbreakscape(heading.forValues);
705
+ if (isMatrix) {
706
+ // Matrix match, forValues is an array
707
+ headingJson.forValues = [];
708
+ if (Array.isArray(heading.forValues)) {
709
+ if (heading.forValues.length >= 1) {
710
+ headingJson.forValues = Breakscape.unbreakscape(heading.forValues);
711
+ }
719
712
  }
720
713
  }
721
714
  else {
722
- headingJson.forValues = (_b = Breakscape.unbreakscape(heading.forValues)) !== null && _b !== void 0 ? _b : '';
715
+ // Standard match, forValues is a string
716
+ headingJson.forValues = '';
717
+ if (Array.isArray(heading.forValues)) {
718
+ if (heading.forValues.length >= 1) {
719
+ headingJson.forValues = Breakscape.unbreakscape(heading.forValues[heading.forValues.length - 1]);
720
+ }
721
+ }
723
722
  }
724
723
  this.bitJson.heading = headingJson;
725
724
  }
@@ -913,6 +912,17 @@ class JsonGenerator {
913
912
  resourceJson = wrapper;
914
913
  }
915
914
  }
915
+ else if (Config.isOfBitType(bitType, BitType.imagesLogoGrave)) {
916
+ // The resource is a logo grave resource
917
+ const logos = [];
918
+ for (const r of resources) {
919
+ const json = this.parseResourceToJson(bitType, r);
920
+ if (json) {
921
+ logos.push(json);
922
+ }
923
+ }
924
+ this.bitJson.logos = logos;
925
+ }
916
926
  else {
917
927
  // This is a standard resource. If there is more than one resource, use the first one.
918
928
  // There should not be more than one because of validation
@@ -1749,10 +1759,8 @@ class JsonGenerator {
1749
1759
  return zoomDisabled;
1750
1760
  // The default value in the JSON is hardcoded, because there is currently no good way to set a different
1751
1761
  // default per bit in the BitConfig.
1752
- switch (bitType) {
1753
- case BitType.imageSeparator:
1754
- case BitType.pageBanner:
1755
- return true;
1762
+ if (Config.isOfBitType(bitType, [BitType.imageSeparator, BitType.pageBanner])) {
1763
+ return true;
1756
1764
  }
1757
1765
  return false;
1758
1766
  }
@@ -1955,6 +1963,8 @@ class JsonGenerator {
1955
1963
  width: undefined,
1956
1964
  height: undefined,
1957
1965
  thumbImage: undefined,
1966
+ scormSource: undefined,
1967
+ posterImage: undefined,
1958
1968
  focusX: undefined,
1959
1969
  focusY: undefined,
1960
1970
  pointerLeft: undefined,
@@ -1964,6 +1974,7 @@ class JsonGenerator {
1964
1974
  externalLink: undefined,
1965
1975
  externalLinkText: undefined,
1966
1976
  videoCallLink: undefined,
1977
+ vendorUrl: undefined,
1967
1978
  duration: undefined,
1968
1979
  list: undefined,
1969
1980
  textReference: undefined,
@@ -1972,6 +1983,7 @@ class JsonGenerator {
1972
1983
  labelTrue: undefined,
1973
1984
  labelFalse: undefined,
1974
1985
  content2Buy: undefined,
1986
+ buttonCaption: undefined,
1975
1987
  quotedPerson: undefined,
1976
1988
  reasonableNumOfChars: undefined,
1977
1989
  resolved: undefined,
@@ -2011,6 +2023,7 @@ class JsonGenerator {
2011
2023
  body: undefined,
2012
2024
  // Resource
2013
2025
  resource: undefined,
2026
+ logos: undefined,
2014
2027
  // Children
2015
2028
  statement: undefined,
2016
2029
  isCorrect: undefined,
@@ -2280,6 +2293,11 @@ class JsonGenerator {
2280
2293
  if (bitJson.resolvedBy == null)
2281
2294
  bitJson.resolvedBy = '';
2282
2295
  }
2296
+ // Special case for 'images-logos-grave' bit
2297
+ if (Config.isOfBitType(bitType, BitType.imagesLogoGrave)) {
2298
+ if (bitJson.logos == null)
2299
+ bitJson.logos = [];
2300
+ }
2283
2301
  }
2284
2302
  // Remove unwanted properties
2285
2303
  // Properties
@@ -2353,6 +2371,10 @@ class JsonGenerator {
2353
2371
  delete bitJson.height;
2354
2372
  if (bitJson.thumbImage == null)
2355
2373
  delete bitJson.thumbImage;
2374
+ if (bitJson.scormSource == null)
2375
+ delete bitJson.scormSource;
2376
+ if (bitJson.posterImage == null)
2377
+ delete bitJson.posterImage;
2356
2378
  if (bitJson.focusX == null)
2357
2379
  delete bitJson.focusX;
2358
2380
  if (bitJson.focusY == null)
@@ -2371,6 +2393,8 @@ class JsonGenerator {
2371
2393
  delete bitJson.externalLinkText;
2372
2394
  if (bitJson.videoCallLink == null)
2373
2395
  delete bitJson.videoCallLink;
2396
+ if (bitJson.vendorUrl == null)
2397
+ delete bitJson.vendorUrl;
2374
2398
  if (bitJson.duration == null)
2375
2399
  delete bitJson.duration;
2376
2400
  if (bitJson.list == null)
@@ -2387,6 +2411,8 @@ class JsonGenerator {
2387
2411
  delete bitJson.labelFalse;
2388
2412
  if (bitJson.content2Buy == null)
2389
2413
  delete bitJson.content2Buy;
2414
+ if (bitJson.buttonCaption == null)
2415
+ delete bitJson.buttonCaption;
2390
2416
  if (bitJson.quotedPerson == null)
2391
2417
  delete bitJson.quotedPerson;
2392
2418
  if (bitJson.resolved == null)
@@ -2455,6 +2481,8 @@ class JsonGenerator {
2455
2481
  // Resource
2456
2482
  if (bitJson.resource == null)
2457
2483
  delete bitJson.resource;
2484
+ if (bitJson.logos == null)
2485
+ delete bitJson.logos;
2458
2486
  // Children
2459
2487
  if (bitJson.statement == null)
2460
2488
  delete bitJson.statement;