@gmb/bitmark-parser-generator 4.10.0 → 4.11.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.
package/dist/index.cjs CHANGED
@@ -1322,6 +1322,7 @@ var propertyKeys = {
1322
1322
  property_siteName: "@siteName",
1323
1323
  property_size: "@size",
1324
1324
  property_slug: "@slug",
1325
+ property_sourceDocument: "@sourceDocument",
1325
1326
  property_spaceId: "@spaceId",
1326
1327
  property_src1x: "@src1x",
1327
1328
  property_src2x: "@src2x",
@@ -2874,7 +2875,7 @@ var GROUPS = {
2874
2875
  },
2875
2876
  [ConfigKey.group_standardItemLeadInstructionHint]: {
2876
2877
  type: GroupConfigType.standard,
2877
- description: "Standard group for item, lead, page number, margin number, instruction and hint tags",
2878
+ description: "Standard group for item, lead, page number, source page number, margin number, instruction and hint tags",
2878
2879
  tags: [
2879
2880
  {
2880
2881
  key: ConfigKey.tag_item,
@@ -2882,8 +2883,8 @@ var GROUPS = {
2882
2883
  chain: [
2883
2884
  {
2884
2885
  key: ConfigKey.tag_item,
2885
- description: "The lead, page number, and margin number for the bit",
2886
- maxCount: 3
2886
+ description: "The lead, page number, source page number, and margin number for the bit",
2887
+ maxCount: 4
2887
2888
  }
2888
2889
  ]
2889
2890
  },
@@ -3278,6 +3279,11 @@ var GROUPS = {
3278
3279
  key: ConfigKey.property_maxTocChapterLevel,
3279
3280
  description: "The maximum table of contents chapter level",
3280
3281
  format: TagFormat.number
3282
+ },
3283
+ {
3284
+ key: ConfigKey.property_sourceDocument,
3285
+ description: "Url of the source document for the book (for example, a PDF file)",
3286
+ format: TagFormat.plainText
3281
3287
  }
3282
3288
  ]
3283
3289
  },
@@ -9185,7 +9191,7 @@ var instance2 = new Config();
9185
9191
  // src/generated/package_info.ts
9186
9192
  var PACKAGE_INFO = {
9187
9193
  "name": "@gmb/bitmark-parser-generator",
9188
- "version": "4.10.0",
9194
+ "version": "4.11.0",
9189
9195
  "author": "Get More Brain Ltd",
9190
9196
  "license": "ISC",
9191
9197
  "description": "A bitmark parser and generator using Peggy.js"
@@ -9593,8 +9599,6 @@ var NodeType = (0, import_superenum20.superenum)({
9593
9599
  botValue: "botValue",
9594
9600
  bubbleTag: "bubbleTag",
9595
9601
  bubbleTagValue: "bubbleTagValue",
9596
- extractorTag: "extractorTag",
9597
- extractorTagValue: "extractorTagValue",
9598
9602
  buttonCaption: "buttonCaption",
9599
9603
  buttonCaptionValue: "buttonCaptionValue",
9600
9604
  callToActionUrl: "callToActionUrl",
@@ -9692,6 +9696,8 @@ var NodeType = (0, import_superenum20.superenum)({
9692
9696
  externalIdValue: "externalIdValue",
9693
9697
  externalLink: "externalLink",
9694
9698
  externalLinkText: "externalLinkText",
9699
+ extractorTag: "extractorTag",
9700
+ extractorTagValue: "extractorTagValue",
9695
9701
  extraProperties: "extraProperties",
9696
9702
  feedback: "feedback",
9697
9703
  feedbackEngine: "feedbackEngine",
@@ -9976,15 +9982,18 @@ var NodeType = (0, import_superenum20.superenum)({
9976
9982
  solution: "solution",
9977
9983
  solutions: "solutions",
9978
9984
  solutionsValue: "solutionsValue",
9985
+ sourceDocument: "sourceDocument",
9986
+ sourceDocumentValue: "sourceDocumentValue",
9987
+ sourcePageNumber: "sourcePageNumber",
9979
9988
  spaceId: "spaceId",
9980
9989
  spaceIdValue: "spaceIdValue",
9981
9990
  src: "src",
9982
- srcAlt: "srcAlt",
9983
- srcAltValue: "srcAltValue",
9984
9991
  src1x: "src1x",
9985
9992
  src2x: "src2x",
9986
9993
  src3x: "src3x",
9987
9994
  src4x: "src4x",
9995
+ srcAlt: "srcAlt",
9996
+ srcAltValue: "srcAltValue",
9988
9997
  start: "start",
9989
9998
  statement: "statement",
9990
9999
  statements: "statements",
@@ -22984,6 +22993,12 @@ var Builder = class extends BaseBuilder {
22984
22993
  data.maxTocChapterLevel,
22985
22994
  options
22986
22995
  ),
22996
+ sourceDocument: this.toAstProperty(
22997
+ bitType,
22998
+ ConfigKey.property_sourceDocument,
22999
+ data.sourceDocument,
23000
+ options
23001
+ ),
22987
23002
  tocResource: this.toAstProperty(
22988
23003
  bitType,
22989
23004
  ConfigKey.property_tocResource,
@@ -23068,6 +23083,7 @@ var Builder = class extends BaseBuilder {
23068
23083
  item: this.handleJsonText(context, TextLocation.tag, data.item),
23069
23084
  lead: this.handleJsonText(context, TextLocation.tag, data.lead),
23070
23085
  pageNumber: this.handleJsonText(context, TextLocation.tag, data.pageNumber),
23086
+ sourcePageNumber: this.handleJsonText(context, TextLocation.tag, data.sourcePageNumber),
23071
23087
  marginNumber: this.handleJsonText(context, TextLocation.tag, data.marginNumber),
23072
23088
  hint: this.handleJsonText(context, TextLocation.tag, data.hint),
23073
23089
  instruction: this.handleJsonText(context, TextLocation.tag, data.instruction),
@@ -23170,7 +23186,15 @@ var Builder = class extends BaseBuilder {
23170
23186
  objectUtils.removeUnwantedProperties(node, {
23171
23187
  ignoreAllFalse: true,
23172
23188
  ignoreUndefined: ["example"],
23173
- ignoreEmptyArrays: ["item", "lead", "pageNumber", "marginNumber", "hint", "instruction"]
23189
+ ignoreEmptyArrays: [
23190
+ "item",
23191
+ "lead",
23192
+ "pageNumber",
23193
+ "sourcePageNumber",
23194
+ "marginNumber",
23195
+ "hint",
23196
+ "instruction"
23197
+ ]
23174
23198
  });
23175
23199
  return nodeValidator.validateBit(node);
23176
23200
  }
@@ -25483,6 +25507,7 @@ var BitmarkGenerator = class extends AstWalkerGenerator {
25483
25507
  if (this.isEmptyText(item)) return false;
25484
25508
  if (!this.isEmptyText(parent?.value?.lead)) return true;
25485
25509
  if (!this.isEmptyText(parent?.value?.pageNumber)) return true;
25510
+ if (!this.isEmptyText(parent?.value?.sourcePageNumber)) return true;
25486
25511
  if (!this.isEmptyText(parent?.value?.marginNumber)) return true;
25487
25512
  this.writeNL_IfNotChain(route);
25488
25513
  this.writeOPC();
@@ -25496,6 +25521,7 @@ var BitmarkGenerator = class extends AstWalkerGenerator {
25496
25521
  const parent = this.getParentNode(route);
25497
25522
  if (this.isEmptyText(lead)) return false;
25498
25523
  if (!this.isEmptyText(parent?.value?.pageNumber)) return true;
25524
+ if (!this.isEmptyText(parent?.value?.sourcePageNumber)) return true;
25499
25525
  if (!this.isEmptyText(parent?.value?.marginNumber)) return true;
25500
25526
  this.writeNL_IfNotChain(route);
25501
25527
  this.writeOPC();
@@ -25511,6 +25537,7 @@ var BitmarkGenerator = class extends AstWalkerGenerator {
25511
25537
  const pageNumber = node.value;
25512
25538
  const parent = this.getParentNode(route);
25513
25539
  if (this.isEmptyText(pageNumber)) return false;
25540
+ if (!this.isEmptyText(parent?.value?.sourcePageNumber)) return true;
25514
25541
  if (!this.isEmptyText(parent?.value?.marginNumber)) return true;
25515
25542
  this.writeNL_IfNotChain(route);
25516
25543
  this.writeOPC();
@@ -25524,6 +25551,31 @@ var BitmarkGenerator = class extends AstWalkerGenerator {
25524
25551
  this.writeCL();
25525
25552
  return true;
25526
25553
  }
25554
+ // bitmarkAst -> bits -> bitsValue -> sourcePageNumber
25555
+ enter_sourcePageNumber(node, route) {
25556
+ const sourcePageNumber = node.value;
25557
+ const parent = this.getParentNode(route);
25558
+ if (this.isEmptyText(sourcePageNumber)) return false;
25559
+ if (!this.isEmptyText(parent?.value?.marginNumber)) return true;
25560
+ this.writeNL_IfNotChain(route);
25561
+ this.writeOPC();
25562
+ this.writeTextOrValue(parent?.value?.item ?? "", TextFormat.bitmarkText, TextLocation.tag);
25563
+ this.writeCL();
25564
+ this.writeOPC();
25565
+ this.writeTextOrValue(parent?.value?.lead ?? "", TextFormat.bitmarkText, TextLocation.tag);
25566
+ this.writeCL();
25567
+ this.writeOPC();
25568
+ this.writeTextOrValue(
25569
+ parent?.value?.pageNumber ?? "",
25570
+ TextFormat.bitmarkText,
25571
+ TextLocation.tag
25572
+ );
25573
+ this.writeCL();
25574
+ this.writeOPC();
25575
+ this.writeTextOrValue(sourcePageNumber ?? "", TextFormat.bitmarkText, TextLocation.tag);
25576
+ this.writeCL();
25577
+ return true;
25578
+ }
25527
25579
  // bitmarkAst -> bits -> bitsValue -> marginNumber
25528
25580
  enter_marginNumber(node, route) {
25529
25581
  const marginNumber = node.value;
@@ -25544,6 +25596,13 @@ var BitmarkGenerator = class extends AstWalkerGenerator {
25544
25596
  );
25545
25597
  this.writeCL();
25546
25598
  this.writeOPC();
25599
+ this.writeTextOrValue(
25600
+ parent?.value?.sourcePageNumber ?? "",
25601
+ TextFormat.bitmarkText,
25602
+ TextLocation.tag
25603
+ );
25604
+ this.writeCL();
25605
+ this.writeOPC();
25547
25606
  this.writeTextOrValue(marginNumber, TextFormat.bitmarkText, TextLocation.tag);
25548
25607
  this.writeCL();
25549
25608
  return true;
@@ -27368,6 +27427,10 @@ var JsonGenerator = class extends AstWalkerGenerator {
27368
27427
  enter_pageNumber(node, route) {
27369
27428
  return this.standardHandler(node, route, NodeType.bitsValue, { array: true });
27370
27429
  }
27430
+ // bitmarkAst -> bits -> bitsValue -> sourcePageNumber
27431
+ enter_sourcePageNumber(node, route) {
27432
+ return this.standardHandler(node, route, NodeType.bitsValue, { array: true });
27433
+ }
27371
27434
  // bitmarkAst -> bits -> bitsValue -> marginNumber
27372
27435
  enter_marginNumber(node, route) {
27373
27436
  return this.standardHandler(node, route, NodeType.bitsValue, { array: true });
@@ -28090,6 +28153,7 @@ var JsonGenerator = class extends AstWalkerGenerator {
28090
28153
  delete bitJson.item;
28091
28154
  delete bitJson.lead;
28092
28155
  delete bitJson.pageNumber;
28156
+ delete bitJson.sourcePageNumber;
28093
28157
  delete bitJson.marginNumber;
28094
28158
  delete bitJson.hint;
28095
28159
  delete bitJson.instruction;
@@ -28101,6 +28165,8 @@ var JsonGenerator = class extends AstWalkerGenerator {
28101
28165
  if (bitJson.lead == null || bitJson.lead?.length === 0) delete bitJson.lead;
28102
28166
  if (bitJson.pageNumber == null || bitJson.pageNumber?.length === 0)
28103
28167
  delete bitJson.pageNumber;
28168
+ if (bitJson.sourcePageNumber == null || bitJson.sourcePageNumber?.length === 0)
28169
+ delete bitJson.sourcePageNumber;
28104
28170
  if (bitJson.marginNumber == null || bitJson.marginNumber?.length === 0)
28105
28171
  delete bitJson.marginNumber;
28106
28172
  if (bitJson.hint == null || bitJson.hint?.length === 0) delete bitJson.hint;
@@ -28112,6 +28178,7 @@ var JsonGenerator = class extends AstWalkerGenerator {
28112
28178
  if (bitJson.hint == null) bitJson.hint = this.textDefault;
28113
28179
  if (bitJson.instruction == null) bitJson.instruction = this.textDefault;
28114
28180
  if (bitJson.pageNumber == null) bitJson.pageNumber = this.textDefault;
28181
+ if (bitJson.sourcePageNumber == null) bitJson.sourcePageNumber = this.textDefault;
28115
28182
  if (bitJson.marginNumber == null) bitJson.marginNumber = this.textDefault;
28116
28183
  }
28117
28184
  if (bitJson.body == null) bitJson.body = this.bodyDefault;
@@ -32573,7 +32640,8 @@ var BitmarkPegParserProcessor = class {
32573
32640
  if (l > 0) result.item = result.itemLead[0];
32574
32641
  if (l > 1) result.lead = result.itemLead[1];
32575
32642
  if (l > 2) result.pageNumber = result.itemLead[2];
32576
- if (l > 3) result.marginNumber = result.itemLead[l - 1];
32643
+ if (l > 3) result.sourcePageNumber = result.itemLead[3];
32644
+ if (l > 4) result.marginNumber = result.itemLead[l - 1];
32577
32645
  }
32578
32646
  if (inBit) {
32579
32647
  result.body = instance11.process(