@gmb/bitmark-parser-generator 1.5.11 → 1.5.13

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 (67) 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/Ast.js +13 -13
  4. package/dist/cjs/ast/Ast.js.map +1 -1
  5. package/dist/cjs/ast/Builder.js +1 -1
  6. package/dist/cjs/ast/Builder.js.map +1 -1
  7. package/dist/cjs/generated/build-info.js +1 -1
  8. package/dist/cjs/generated/parser/text/text-peggy-parser.js +1126 -651
  9. package/dist/cjs/generated/parser/text/text-peggy-parser.js.map +1 -1
  10. package/dist/cjs/generator/AstWalkerGenerator.js +83 -0
  11. package/dist/cjs/generator/AstWalkerGenerator.js.map +1 -0
  12. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +144 -180
  13. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  14. package/dist/cjs/generator/json/JsonGenerator.js +84 -114
  15. package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
  16. package/dist/cjs/generator/text/TextGenerator.js +91 -124
  17. package/dist/cjs/generator/text/TextGenerator.js.map +1 -1
  18. package/dist/cjs/model/enum/TextMarkType.js +13 -2
  19. package/dist/cjs/model/enum/TextMarkType.js.map +1 -1
  20. package/dist/cjs/model/enum/TextNodeType.js +1 -0
  21. package/dist/cjs/model/enum/TextNodeType.js.map +1 -1
  22. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +20 -10
  23. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  24. package/dist/cjs/parser/json/JsonParser.js +1 -1
  25. package/dist/cjs/parser/json/JsonParser.js.map +1 -1
  26. package/dist/esm/ast/Ast.js +13 -13
  27. package/dist/esm/ast/Ast.js.map +1 -1
  28. package/dist/esm/ast/Builder.js +1 -1
  29. package/dist/esm/ast/Builder.js.map +1 -1
  30. package/dist/esm/generated/build-info.js +1 -1
  31. package/dist/esm/generated/parser/text/text-peggy-parser.js +1126 -651
  32. package/dist/esm/generated/parser/text/text-peggy-parser.js.map +1 -1
  33. package/dist/esm/generator/AstWalkerGenerator.js +80 -0
  34. package/dist/esm/generator/AstWalkerGenerator.js.map +1 -0
  35. package/dist/esm/generator/bitmark/BitmarkGenerator.js +144 -180
  36. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  37. package/dist/esm/generator/json/JsonGenerator.js +84 -114
  38. package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
  39. package/dist/esm/generator/text/TextGenerator.js +91 -124
  40. package/dist/esm/generator/text/TextGenerator.js.map +1 -1
  41. package/dist/esm/model/enum/TextMarkType.js +13 -2
  42. package/dist/esm/model/enum/TextMarkType.js.map +1 -1
  43. package/dist/esm/model/enum/TextNodeType.js +1 -0
  44. package/dist/esm/model/enum/TextNodeType.js.map +1 -1
  45. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +20 -10
  46. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  47. package/dist/esm/parser/json/JsonParser.js +1 -1
  48. package/dist/esm/parser/json/JsonParser.js.map +1 -1
  49. package/dist/types/ast/Ast.d.ts +4 -8
  50. package/dist/types/ast/Ast.d.ts.map +1 -1
  51. package/dist/types/generated/parser/text/text-peggy-parser.d.ts.map +1 -1
  52. package/dist/types/generator/AstWalkerGenerator.d.ts +32 -0
  53. package/dist/types/generator/AstWalkerGenerator.d.ts.map +1 -0
  54. package/dist/types/generator/Generator.d.ts +2 -2
  55. package/dist/types/generator/Generator.d.ts.map +1 -1
  56. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +121 -127
  57. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  58. package/dist/types/generator/json/JsonGenerator.d.ts +43 -48
  59. package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
  60. package/dist/types/generator/text/TextGenerator.d.ts +13 -17
  61. package/dist/types/generator/text/TextGenerator.d.ts.map +1 -1
  62. package/dist/types/model/enum/TextMarkType.d.ts +26 -4
  63. package/dist/types/model/enum/TextMarkType.d.ts.map +1 -1
  64. package/dist/types/model/enum/TextNodeType.d.ts +2 -0
  65. package/dist/types/model/enum/TextNodeType.d.ts.map +1 -1
  66. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  67. package/package.json +13 -13
@@ -14,6 +14,7 @@ import { BitmarkVersion, DEFAULT_BITMARK_VERSION } from '../../model/enum/Bitmar
14
14
  import { TextFormat } from '../../model/enum/TextFormat';
15
15
  import { TextMarkType } from '../../model/enum/TextMarkType';
16
16
  import { TextNodeType } from '../../model/enum/TextNodeType';
17
+ import { AstWalkerGenerator } from '../AstWalkerGenerator';
17
18
  const DEFAULT_OPTIONS = {
18
19
  debugGenerationInline: false,
19
20
  };
@@ -35,6 +36,35 @@ const STANDARD_MARKS = {
35
36
  [TextMarkType.italic]: ITALIC_MARK,
36
37
  [TextMarkType.highlight]: HIGHLIGHT_MARK,
37
38
  };
39
+ const STANDARD_MARK_TYPES = [
40
+ TextMarkType.bold,
41
+ TextMarkType.light,
42
+ TextMarkType.italic,
43
+ TextMarkType.highlight,
44
+ ];
45
+ const INLINE_MARK_TYPES = [
46
+ TextMarkType.strike,
47
+ TextMarkType.subscript,
48
+ TextMarkType.superscript,
49
+ TextMarkType.ins,
50
+ TextMarkType.del,
51
+ TextMarkType.underline,
52
+ TextMarkType.doubleUnderline,
53
+ TextMarkType.circle,
54
+ TextMarkType.languageEm,
55
+ TextMarkType.userUnderline,
56
+ TextMarkType.userDoubleUnderline,
57
+ TextMarkType.userStrike,
58
+ TextMarkType.userCircle,
59
+ TextMarkType.userHighlight,
60
+ //
61
+ TextMarkType.var,
62
+ TextMarkType.code,
63
+ TextMarkType.timer,
64
+ TextMarkType.duration,
65
+ TextMarkType.color,
66
+ TextMarkType.comment,
67
+ ];
38
68
  // Regex explanation:
39
69
  // - Match newline or carriage return + newline
40
70
  const INDENTATION_REGEX = new RegExp(/(\n|\r\n)/, 'g');
@@ -42,7 +72,7 @@ const LINK_REGEX = new RegExp(/https?:\/\/|mailto:(.*)/, 'g');
42
72
  /**
43
73
  * Generate text from a bitmark text AST
44
74
  */
45
- class TextGenerator {
75
+ class TextGenerator extends AstWalkerGenerator {
46
76
  /**
47
77
  * Generate text from a bitmark text AST
48
78
  *
@@ -50,7 +80,8 @@ class TextGenerator {
50
80
  * @param options - text generation options
51
81
  */
52
82
  constructor(bitmarkVersion, options) {
53
- var _a;
83
+ var _a, _b;
84
+ super();
54
85
  this.ast = new Ast();
55
86
  // State
56
87
  this.textFormat = TextFormat.bitmarkMinusMinus;
@@ -62,10 +93,9 @@ class TextGenerator {
62
93
  this.exitedCodeBlock = false;
63
94
  this.placeholderIndex = 0;
64
95
  this.placeholders = {};
65
- // Debug
66
- this.printed = false;
67
96
  this.bitmarkVersion = (_a = BitmarkVersion.fromValue(bitmarkVersion)) !== null && _a !== void 0 ? _a : DEFAULT_BITMARK_VERSION;
68
97
  this.options = Object.assign(Object.assign({}, DEFAULT_OPTIONS), options);
98
+ this.debugGenerationInline = (_b = this.options.debugGenerationInline) !== null && _b !== void 0 ? _b : false;
69
99
  // Set defaults according to bitmark version
70
100
  if (this.bitmarkVersion === BitmarkVersion.v2) {
71
101
  //
@@ -123,80 +153,31 @@ class TextGenerator {
123
153
  // Walk the bitmark AST
124
154
  this.ast.walk(ast, NodeType.textAst, this, undefined);
125
155
  }
126
- enter(node, parent, route) {
127
- let res = void 0;
128
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
129
- const gen = this;
130
- const funcName = `enter_${node.key}`;
131
- if (!this.printed) {
132
- this.printed = true;
133
- }
134
- if (this.options.debugGenerationInline)
135
- this.writeInlineDebug(node.key, { open: true });
136
- if (typeof gen[funcName] === 'function') {
137
- res = gen[funcName](node, parent, route);
138
- }
139
- return res;
140
- }
141
- between(node, left, right, parent, route) {
142
- let res = void 0;
143
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
144
- const gen = this;
145
- const funcName = `between_${node.key}`;
146
- if (this.options.debugGenerationInline)
147
- this.writeInlineDebug(node.key, { single: true });
148
- if (typeof gen[funcName] === 'function') {
149
- res = gen[funcName](node, left, right, parent, route);
150
- }
151
- return res;
152
- }
153
- exit(node, parent, route) {
154
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
155
- const gen = this;
156
- const funcName = `exit_${node.key}`;
157
- if (this.options.debugGenerationInline)
158
- this.writeInlineDebug(node.key, { close: true });
159
- if (typeof gen[funcName] === 'function') {
160
- gen[funcName](node, parent, route);
161
- }
162
- }
163
- leaf(node, parent, route) {
164
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
165
- const gen = this;
166
- const funcName = `leaf_${node.key}`;
167
- if (this.options.debugGenerationInline)
168
- this.writeInlineDebug(node.key, { open: true });
169
- if (typeof gen[funcName] === 'function') {
170
- gen[funcName](node, parent, route);
171
- }
172
- if (this.options.debugGenerationInline)
173
- this.writeInlineDebug(node.key, { close: true });
174
- }
175
156
  //
176
157
  // NODE HANDLERS
177
158
  //
178
159
  // * -> textAstValue
179
- enter_textAstValue(node, _parent, _route) {
180
- return this.handleEnterNode(node.value);
160
+ enter_textAstValue(node, route) {
161
+ return this.handleEnterNode(node.value, route);
181
162
  }
182
- between_textAstValue(node, _left, _right, _parent, _route) {
183
- return this.handleBetweenNode(node.value);
163
+ between_textAstValue(node, left, right, route) {
164
+ return this.handleBetweenNode(node.value, left, right, route);
184
165
  }
185
- exit_textAstValue(node, _parent, _route) {
186
- return this.handleExitNode(node.value);
166
+ exit_textAstValue(node, route) {
167
+ return this.handleExitNode(node.value, route);
187
168
  }
188
169
  // * -> contentValue
189
- enter_contentValueValue(node, _parent, _route) {
190
- return this.handleEnterNode(node.value);
170
+ enter_contentValueValue(node, route) {
171
+ return this.handleEnterNode(node.value, route);
191
172
  }
192
- between_contentValueValue(node, _left, _right, _parent, _route) {
193
- this.handleBetweenNode(node.value);
173
+ between_contentValueValue(node, left, right, route) {
174
+ this.handleBetweenNode(node.value, left, right, route);
194
175
  }
195
- exit_contentValueValue(node, _parent, _route) {
196
- return this.handleExitNode(node.value);
176
+ exit_contentValueValue(node, route) {
177
+ return this.handleExitNode(node.value, route);
197
178
  }
198
179
  // END NODE HANDLERS
199
- handleEnterNode(node) {
180
+ handleEnterNode(node, route) {
200
181
  this.handleIndent(node);
201
182
  switch (node.type) {
202
183
  case TextNodeType.paragraph:
@@ -217,7 +198,7 @@ class TextGenerator {
217
198
  break;
218
199
  case TextNodeType.listItem:
219
200
  case TextNodeType.taskItem:
220
- this.writeBullet(node);
201
+ this.writeBullet(node, route);
221
202
  break;
222
203
  case TextNodeType.image:
223
204
  this.writeImage(node);
@@ -239,13 +220,13 @@ class TextGenerator {
239
220
  // Clear exited flags
240
221
  this.exitedCodeBlock = false;
241
222
  }
242
- handleBetweenNode(node) {
223
+ handleBetweenNode(node, _left, _right, _route) {
243
224
  switch (node.type) {
244
225
  default:
245
226
  // Ignore unknown type
246
227
  }
247
228
  }
248
- handleExitNode(node) {
229
+ handleExitNode(node, _route) {
249
230
  switch (node.type) {
250
231
  case TextNodeType.text:
251
232
  this.writeMarks(node, false);
@@ -274,6 +255,7 @@ class TextGenerator {
274
255
  break;
275
256
  case TextNodeType.bulletList:
276
257
  case TextNodeType.orderedList:
258
+ case TextNodeType.letteredList:
277
259
  case TextNodeType.taskList:
278
260
  // List Block type nodes, write a newline only if there is no indent
279
261
  if (this.currentIndent <= 1)
@@ -288,6 +270,7 @@ class TextGenerator {
288
270
  switch (node.type) {
289
271
  case TextNodeType.bulletList:
290
272
  case TextNodeType.orderedList:
273
+ case TextNodeType.letteredList:
291
274
  case TextNodeType.taskList:
292
275
  this.currentIndent++;
293
276
  break;
@@ -299,6 +282,7 @@ class TextGenerator {
299
282
  switch (node.type) {
300
283
  case TextNodeType.bulletList:
301
284
  case TextNodeType.orderedList:
285
+ case TextNodeType.letteredList:
302
286
  case TextNodeType.taskList:
303
287
  this.currentIndent--;
304
288
  break;
@@ -440,28 +424,16 @@ class TextGenerator {
440
424
  const markStartEnd = node.marks.reduce((acc, mark) => {
441
425
  if (acc)
442
426
  return acc;
443
- switch (mark.type) {
444
- case TextMarkType.bold:
445
- case TextMarkType.light:
446
- case TextMarkType.italic:
447
- case TextMarkType.highlight:
448
- if (singleMark)
449
- return STANDARD_MARKS[mark.type];
450
- return INLINE_MARK;
451
- break;
452
- case TextMarkType.strike:
453
- case TextMarkType.sub:
454
- case TextMarkType.super:
455
- case TextMarkType.ins:
456
- case TextMarkType.del:
457
- case TextMarkType.var:
458
- case TextMarkType.code:
459
- case TextMarkType.color:
460
- case TextMarkType.comment:
461
- return INLINE_MARK;
462
- case TextMarkType.link:
463
- default:
464
- // Do nothing (link is handled in writeText)
427
+ if (STANDARD_MARK_TYPES.indexOf(mark.type) !== -1) {
428
+ if (singleMark)
429
+ return STANDARD_MARKS[mark.type];
430
+ return INLINE_MARK;
431
+ }
432
+ else if (INLINE_MARK_TYPES.indexOf(mark.type) !== -1) {
433
+ return INLINE_MARK;
434
+ }
435
+ else {
436
+ // Do nothing (NOTE: link is handled in writeText)
465
437
  }
466
438
  return acc;
467
439
  }, undefined);
@@ -473,38 +445,25 @@ class TextGenerator {
473
445
  if (!enter) {
474
446
  let inlineMarkWritten = false;
475
447
  for (const mark of node.marks) {
476
- switch (mark.type) {
477
- case TextMarkType.bold:
478
- case TextMarkType.light:
479
- case TextMarkType.italic:
480
- case TextMarkType.highlight:
481
- if (!singleMark) {
482
- this.writeInlineMarkStartEnd();
483
- this.writeInlineMark(mark);
484
- inlineMarkWritten = true;
485
- }
486
- break;
487
- case TextMarkType.strike:
488
- case TextMarkType.sub:
489
- case TextMarkType.super:
490
- case TextMarkType.ins:
491
- case TextMarkType.del:
492
- case TextMarkType.var:
493
- case TextMarkType.code:
494
- case TextMarkType.color:
448
+ if (STANDARD_MARK_TYPES.indexOf(mark.type) !== -1) {
449
+ if (!singleMark) {
495
450
  this.writeInlineMarkStartEnd();
496
451
  this.writeInlineMark(mark);
497
452
  inlineMarkWritten = true;
498
- break;
499
- case TextMarkType.comment: {
500
- this.writeInlineMarkStartEnd();
501
- this.writeCommentMark(mark);
502
- inlineMarkWritten = true;
503
- break;
504
453
  }
505
- case TextMarkType.link:
506
- default:
507
- // Do nothing (link is handled in writeText)
454
+ }
455
+ else if (TextMarkType.comment === mark.type) {
456
+ this.writeInlineMarkStartEnd();
457
+ this.writeCommentMark(mark);
458
+ inlineMarkWritten = true;
459
+ }
460
+ else if (INLINE_MARK_TYPES.indexOf(mark.type) !== -1) {
461
+ this.writeInlineMarkStartEnd();
462
+ this.writeInlineMark(mark);
463
+ inlineMarkWritten = true;
464
+ }
465
+ else {
466
+ // Do nothing (NOTE: link is handled in writeText)
508
467
  }
509
468
  }
510
469
  // Write the mark end
@@ -550,18 +509,23 @@ class TextGenerator {
550
509
  // Write the section tag
551
510
  this.write(s);
552
511
  }
553
- writeBullet(node) {
512
+ writeBullet(node, route) {
554
513
  var _a, _b;
555
514
  // Add indentation
556
515
  let bullet = this.getIndentationString();
516
+ const listParent = this.getParentNode(route, 2);
517
+ const listType = listParent === null || listParent === void 0 ? void 0 : listParent.value.type;
557
518
  // Add bullet
558
- if (node.parent === TextNodeType.bulletList) {
519
+ if (listType === TextNodeType.bulletList) {
559
520
  bullet += '• ';
560
521
  }
561
- else if (node.parent === TextNodeType.orderedList) {
522
+ else if (listType === TextNodeType.orderedList) {
562
523
  bullet += '•1 ';
563
524
  }
564
- else if (node.parent === TextNodeType.taskList) {
525
+ else if (listType === TextNodeType.letteredList) {
526
+ bullet += '•A ';
527
+ }
528
+ else if (listType === TextNodeType.taskList) {
565
529
  const taskList = node;
566
530
  const checked = (_b = (_a = taskList.attrs) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false;
567
531
  bullet += checked ? '•+ ' : '•- ';
@@ -625,7 +589,7 @@ class TextGenerator {
625
589
  let s = `${mark.type}`;
626
590
  if (mark.attrs) {
627
591
  for (const [k, v] of Object.entries(mark.attrs)) {
628
- if ((k === 'language' && v !== 'plain text') || k === 'color') {
592
+ if ((k === 'language' && v !== 'plain text') || k === 'color' || k === 'name' || k === 'duration') {
629
593
  s = `${s}:${v}`;
630
594
  }
631
595
  }
@@ -665,6 +629,9 @@ class TextGenerator {
665
629
  }
666
630
  this.writeString(tag);
667
631
  }
632
+ //
633
+ // Helper functions
634
+ //
668
635
  getBitType(route) {
669
636
  for (const node of route) {
670
637
  if (node.key === NodeType.bitsValue) {
@@ -1 +1 @@
1
- {"version":3,"file":"TextGenerator.js","sourceRoot":"","sources":["../../../../src/generator/text/TextGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextGenerator.js","sourceRoot":"","sources":["../../../../src/generator/text/TextGenerator.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,24 @@ const TextMarkType = superenum({
7
7
  highlight: 'highlight',
8
8
  // Inline only styles
9
9
  strike: 'strike',
10
- sub: 'sub',
11
- super: 'super',
10
+ subscript: 'subscript',
11
+ superscript: 'superscript',
12
12
  ins: 'ins',
13
13
  del: 'del',
14
+ underline: 'underline',
15
+ doubleUnderline: 'doubleUnderline',
16
+ circle: 'circle',
17
+ languageEm: 'languageEm',
18
+ userUnderline: 'userUnderline',
19
+ userDoubleUnderline: 'userDoubleUnderline',
20
+ userStrike: 'userStrike',
21
+ userCircle: 'userCircle',
22
+ userHighlight: 'userHighlight',
14
23
  link: 'link',
15
24
  var: 'var',
16
25
  code: 'code',
26
+ timer: 'timer',
27
+ duration: 'duration',
17
28
  color: 'color',
18
29
  hash: '#',
19
30
  comment: 'comment',
@@ -1 +1 @@
1
- {"version":3,"file":"TextMarkType.js","sourceRoot":"","sources":["../../../../src/model/enum/TextMarkType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,YAAY,GAAG,SAAS,CAAC;IAC7B,SAAS;IACT,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IAEtB,qBAAqB;IACrB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IAEV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAIH,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"TextMarkType.js","sourceRoot":"","sources":["../../../../src/model/enum/TextMarkType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,YAAY,GAAG,SAAS,CAAC;IAC7B,SAAS;IACT,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IAEtB,qBAAqB;IACrB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,SAAS,EAAE,WAAW;IACtB,eAAe,EAAE,iBAAiB;IAClC,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,mBAAmB,EAAE,qBAAqB;IAC1C,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAE9B,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,SAAS;CACnB,CAAC,CAAC;AAIH,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -9,6 +9,7 @@ const TextNodeType = superenum({
9
9
  section: 'section',
10
10
  bulletList: 'bulletList',
11
11
  orderedList: 'orderedList',
12
+ letteredList: 'letteredList',
12
13
  taskList: 'taskList',
13
14
  listItem: 'listItem',
14
15
  taskItem: 'taskItem',
@@ -1 +1 @@
1
- {"version":3,"file":"TextNodeType.js","sourceRoot":"","sources":["../../../../src/model/enum/TextNodeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,YAAY,GAAG,SAAS,CAAC;IAC7B,OAAO;IACP,IAAI,EAAE,MAAM;IAEZ,SAAS;IACT,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IAEtB,YAAY;IACZ,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;CACb,CAAC,CAAC;AAIH,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"TextNodeType.js","sourceRoot":"","sources":["../../../../src/model/enum/TextNodeType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,YAAY,GAAG,SAAS,CAAC;IAC7B,OAAO;IACP,IAAI,EAAE,MAAM;IAEZ,SAAS;IACT,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;IAEtB,YAAY;IACZ,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;CACb,CAAC,CAAC;AAIH,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -309,10 +309,11 @@ function parseQuestions(_context, _bitType, cardSet) {
309
309
  }
310
310
  function parseMatchPairs(_context, _bitType, cardSet) {
311
311
  let sideIdx = 0;
312
+ let isHeading = false;
312
313
  let heading;
313
314
  const pairs = [];
314
315
  let forKeys = undefined;
315
- const forValues = [];
316
+ let forValues = [];
316
317
  let pairKey = undefined;
317
318
  let pairValues = [];
318
319
  let keyAudio = undefined;
@@ -324,7 +325,9 @@ function parseMatchPairs(_context, _bitType, cardSet) {
324
325
  let exampleCard;
325
326
  // let variant: ProcessedCardVariant | undefined;
326
327
  for (const card of cardSet.cards) {
328
+ isHeading = false;
327
329
  forKeys = undefined;
330
+ forValues = [];
328
331
  pairKey = undefined;
329
332
  pairValues = [];
330
333
  keyAudio = undefined;
@@ -342,10 +345,12 @@ function parseMatchPairs(_context, _bitType, cardSet) {
342
345
  exampleCard = example ? example : exampleCard;
343
346
  // Get the 'heading' which is the [#title] at level 1
344
347
  const heading = title && title[1];
348
+ if (heading != null)
349
+ isHeading = true;
345
350
  if (sideIdx === 0) {
346
351
  // First side
352
+ forKeys = heading;
347
353
  if (heading != null) {
348
- forKeys = heading;
349
354
  isDefaultExampleCardSet = isDefaultExample === true ? true : isDefaultExampleCardSet;
350
355
  exampleCardSet = example ? example : exampleCardSet;
351
356
  }
@@ -367,8 +372,8 @@ function parseMatchPairs(_context, _bitType, cardSet) {
367
372
  }
368
373
  else {
369
374
  // Subsequent sides
375
+ forValues.push(heading !== null && heading !== void 0 ? heading : Breakscape.EMPTY_STRING);
370
376
  if (heading != null) {
371
- forValues.push(heading);
372
377
  isDefaultExampleCardSet = isDefaultExample === true ? true : isDefaultExampleCardSet;
373
378
  exampleCardSet = example ? example : exampleCardSet;
374
379
  }
@@ -388,9 +393,9 @@ function parseMatchPairs(_context, _bitType, cardSet) {
388
393
  }
389
394
  sideIdx++;
390
395
  }
391
- if (forKeys != null) {
396
+ if (isHeading) {
392
397
  heading = builder.heading({
393
- forKeys,
398
+ forKeys: forKeys !== null && forKeys !== void 0 ? forKeys : Breakscape.EMPTY_STRING,
394
399
  forValues,
395
400
  });
396
401
  }
@@ -417,9 +422,10 @@ function parseMatchPairs(_context, _bitType, cardSet) {
417
422
  }
418
423
  function parseMatchMatrix(_context, _bitType, cardSet) {
419
424
  let sideIdx = 0;
425
+ let isHeading = false;
420
426
  let heading;
421
427
  let forKeys = undefined;
422
- const forValues = [];
428
+ let forValues = [];
423
429
  let matrixKey = undefined;
424
430
  const matrix = [];
425
431
  let matrixCells = [];
@@ -437,8 +443,10 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
437
443
  // let keyImage: ImageResource | undefined = undefined;
438
444
  // let variant: ProcessedCardVariant | undefined;
439
445
  for (const card of cardSet.cards) {
446
+ isHeading = false;
440
447
  forKeys = undefined;
441
448
  matrixKey = undefined;
449
+ forValues = [];
442
450
  // keyAudio = undefined;
443
451
  // keyImage = undefined;
444
452
  matrixCells = [];
@@ -464,10 +472,12 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
464
472
  Object.assign(matrixCellTags, restTags);
465
473
  // Get the 'heading' which is the [#title] at level 1
466
474
  const heading = title && title[1];
475
+ if (heading != null)
476
+ isHeading = true;
467
477
  if (sideIdx === 0) {
468
478
  // First side
479
+ forKeys = heading;
469
480
  if (heading != null) {
470
- forKeys = heading;
471
481
  // } else if (tags.resource) {
472
482
  // console.log('WARNING: Match card has resource on first side', tags.resource);
473
483
  // if (tags.resource.type === ResourceTag.audio) {
@@ -488,8 +498,8 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
488
498
  }
489
499
  else {
490
500
  // Subsequent sides
501
+ forValues.push(heading !== null && heading !== void 0 ? heading : Breakscape.EMPTY_STRING);
491
502
  if (heading != null) {
492
- forValues.push(heading);
493
503
  isDefaultExampleCardSet = isDefaultExample === true ? true : isDefaultExampleCardSet;
494
504
  exampleCardSet = example ? example : exampleCardSet;
495
505
  }
@@ -518,9 +528,9 @@ function parseMatchMatrix(_context, _bitType, cardSet) {
518
528
  }
519
529
  sideIdx++;
520
530
  }
521
- if (forKeys != null) {
531
+ if (isHeading) {
522
532
  heading = builder.heading({
523
- forKeys,
533
+ forKeys: forKeys !== null && forKeys !== void 0 ? forKeys : Breakscape.EMPTY_STRING,
524
534
  forValues,
525
535
  });
526
536
  }