proskomma-core 0.10.6 → 0.10.9
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.js +36 -10
- package/dist/index.mjs +36 -10
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -15986,7 +15986,7 @@ var bitset = {
|
|
|
15986
15986
|
})(bitset, bitsetExports);
|
|
15987
15987
|
const BitSet = /* @__PURE__ */ getDefaultExportFromCjs(bitsetExports);
|
|
15988
15988
|
const name = "proskomma-core";
|
|
15989
|
-
const version = "0.10.
|
|
15989
|
+
const version = "0.10.9";
|
|
15990
15990
|
const description$b = "A Scripture Runtime Engine";
|
|
15991
15991
|
const files = [
|
|
15992
15992
|
"dist"
|
|
@@ -34022,19 +34022,19 @@ const lexingRegexes = [
|
|
|
34022
34022
|
XRegExp('([ \\t]*\\|?[ \\t]*([A-Za-z0-9\\-]+)="([^"]*)"[ \\t]?)')
|
|
34023
34023
|
],
|
|
34024
34024
|
["attribute", "defaultAttribute", XRegExp("([ \\t]*\\|[ \\t]*([^\\|\\\\]*))")],
|
|
34025
|
-
["milestone", "emptyMilestone", XRegExp(
|
|
34025
|
+
["milestone", "emptyMilestone", XRegExp('(\\\\([a-z1-9]+)([ \\t]*\\|[ \\t]*[a-z1-9]+="[^\\|\\\\"]*")*\\\\[*])')],
|
|
34026
34026
|
["milestone", "startMilestoneTag", XRegExp("(\\\\([a-z1-9]+)-([se]))")],
|
|
34027
34027
|
["milestone", "endMilestoneMarker", XRegExp("(\\\\([*]))")],
|
|
34028
34028
|
["tag", "endTag", XRegExp("(\\\\([+]?[a-z\\-]+)([1-9]?(-([1-9]))?)[*])")],
|
|
34029
34029
|
["tag", "startTag", XRegExp("(\\\\([+]?[a-z\\-]+)([1-9]?(-([1-9]))?)[ \\t]?)")],
|
|
34030
34030
|
["bad", "bareSlash", XRegExp("(\\\\)")],
|
|
34031
34031
|
["printable", "eol", XRegExp("([ \\t]*[\\r\\n]+[ \\t]*)")],
|
|
34032
|
-
[
|
|
34032
|
+
// ['break', 'noBreakSpace', xre('~')],
|
|
34033
34033
|
["break", "softLineBreak", XRegExp("//")],
|
|
34034
34034
|
[
|
|
34035
34035
|
"printable",
|
|
34036
34036
|
"wordLike",
|
|
34037
|
-
XRegExp("([\\p{Letter}\\p{Number}\\p{Mark}\\u2060]{1,127})")
|
|
34037
|
+
XRegExp("([\\p{Letter}\\p{Number}\\p{Mark}\\u2060~]{1,127})")
|
|
34038
34038
|
],
|
|
34039
34039
|
["printable", "lineSpace", XRegExp("([\\p{Separator} ]{1,127})")],
|
|
34040
34040
|
[
|
|
@@ -34049,7 +34049,7 @@ const lexingRegexes = [
|
|
|
34049
34049
|
const mainRegex = XRegExp.union(lexingRegexes.map((x) => x[2]));
|
|
34050
34050
|
const makePrintable = (subclass, matchedBits) => ({
|
|
34051
34051
|
subclass,
|
|
34052
|
-
printValue: matchedBits[0]
|
|
34052
|
+
printValue: matchedBits[0].replace(/~/g, " ")
|
|
34053
34053
|
});
|
|
34054
34054
|
const makeChapter = (subclass, matchedBits) => ({
|
|
34055
34055
|
subclass,
|
|
@@ -34111,6 +34111,12 @@ const makeMilestone = (subclass, matchedBits) => {
|
|
|
34111
34111
|
ret.tagName = matchedBits[2];
|
|
34112
34112
|
if (subclass === "emptyMilestone") {
|
|
34113
34113
|
ret.printValue = `\\${ret.tagName}\\*`;
|
|
34114
|
+
ret.attributes = matchedBits[1] ? matchedBits[1].split("|").slice(1).map((a) => a.split("=")).map(
|
|
34115
|
+
(aa) => [
|
|
34116
|
+
aa[0],
|
|
34117
|
+
aa[1].replace(/"/g, "").replace(/[\\*]/g, "")
|
|
34118
|
+
]
|
|
34119
|
+
) : [];
|
|
34114
34120
|
} else {
|
|
34115
34121
|
ret.printValue = `\\${ret.tagName}`;
|
|
34116
34122
|
ret.sOrE = matchedBits[3];
|
|
@@ -39491,7 +39497,9 @@ const specs = (pt) => [
|
|
|
39491
39497
|
// EMPTY MILESTONE - add open and close scope
|
|
39492
39498
|
contexts: [["emptyMilestone"]],
|
|
39493
39499
|
parser: {
|
|
39494
|
-
during: (parser, pt2) =>
|
|
39500
|
+
during: (parser, pt2) => {
|
|
39501
|
+
parser.addEmptyMilestone(labelForScope$2("milestone", [pt2.tagName]));
|
|
39502
|
+
}
|
|
39495
39503
|
}
|
|
39496
39504
|
},
|
|
39497
39505
|
{
|
|
@@ -50476,11 +50484,11 @@ class Proskomma {
|
|
|
50476
50484
|
this.docSets[docSetId].docIds.push(doc.id);
|
|
50477
50485
|
this.docSets[docSetId].buildEnumIndexes();
|
|
50478
50486
|
}
|
|
50479
|
-
loadSuccinctDocSet(succinctOb) {
|
|
50487
|
+
loadSuccinctDocSet(succinctOb, bookCodes2) {
|
|
50480
50488
|
const succinctId = succinctOb.id;
|
|
50481
|
-
if (succinctId in this.docSets) {
|
|
50489
|
+
if (succinctId in this.docSets && !bookCodes2) {
|
|
50482
50490
|
throw new Error(
|
|
50483
|
-
`Attempting to succinct load docSet ${succinctId} which is already loaded`
|
|
50491
|
+
`Attempting to succinct load docSet ${succinctId} which is already loaded, without bookCodes argument`
|
|
50484
50492
|
);
|
|
50485
50493
|
}
|
|
50486
50494
|
const docSet = new DocSet(this, null, null, succinctOb);
|
|
@@ -50503,13 +50511,31 @@ class Proskomma {
|
|
|
50503
50511
|
}
|
|
50504
50512
|
docSet.buildPreEnums();
|
|
50505
50513
|
const docs = [];
|
|
50506
|
-
|
|
50514
|
+
const selectDocs = (dId) => !bookCodes2 || bookCodes2.includes(succinctOb.docs[dId].headers.bookCode);
|
|
50515
|
+
for (const docId of Object.keys(succinctOb.docs).filter(selectDocs)) {
|
|
50507
50516
|
let doc = this.newDocumentFromSuccinct(docId, succinctOb);
|
|
50508
50517
|
docs.push(doc);
|
|
50509
50518
|
}
|
|
50510
50519
|
docSet.preEnums = {};
|
|
50511
50520
|
return docs;
|
|
50512
50521
|
}
|
|
50522
|
+
augmentSuccinctDocSet(succinctOb, bookCodes2) {
|
|
50523
|
+
if (!bookCodes2 || bookCodes2.length === 0) {
|
|
50524
|
+
throw new Error("bookCodes argument must be present and contain at least one element in augmentSuccinctDocSet");
|
|
50525
|
+
}
|
|
50526
|
+
const selectDocs = (dId) => {
|
|
50527
|
+
const doc = succinctOb.docs[dId];
|
|
50528
|
+
return bookCodes2.includes(doc.headers.bookCode);
|
|
50529
|
+
};
|
|
50530
|
+
if (!this.docSets[succinctOb.id]) {
|
|
50531
|
+
throw new Error(`docSet id '${succinctOb.id}' not found in Proskomma when using augmentSuccinctDocSet. Load it first with optional bookCodes argument`);
|
|
50532
|
+
}
|
|
50533
|
+
for (const docId of Object.keys(succinctOb.docs).filter(selectDocs)) {
|
|
50534
|
+
if (!this.documents[docId]) {
|
|
50535
|
+
this.newDocumentFromSuccinct(docId, succinctOb);
|
|
50536
|
+
}
|
|
50537
|
+
}
|
|
50538
|
+
}
|
|
50513
50539
|
newDocumentFromSuccinct(docId, succinctOb) {
|
|
50514
50540
|
const doc = new Document(this, succinctOb.id);
|
|
50515
50541
|
doc.id = docId;
|
package/dist/index.mjs
CHANGED
|
@@ -15984,7 +15984,7 @@ var bitset = {
|
|
|
15984
15984
|
})(bitset, bitsetExports);
|
|
15985
15985
|
const BitSet = /* @__PURE__ */ getDefaultExportFromCjs(bitsetExports);
|
|
15986
15986
|
const name = "proskomma-core";
|
|
15987
|
-
const version = "0.10.
|
|
15987
|
+
const version = "0.10.9";
|
|
15988
15988
|
const description$b = "A Scripture Runtime Engine";
|
|
15989
15989
|
const files = [
|
|
15990
15990
|
"dist"
|
|
@@ -34020,19 +34020,19 @@ const lexingRegexes = [
|
|
|
34020
34020
|
XRegExp('([ \\t]*\\|?[ \\t]*([A-Za-z0-9\\-]+)="([^"]*)"[ \\t]?)')
|
|
34021
34021
|
],
|
|
34022
34022
|
["attribute", "defaultAttribute", XRegExp("([ \\t]*\\|[ \\t]*([^\\|\\\\]*))")],
|
|
34023
|
-
["milestone", "emptyMilestone", XRegExp(
|
|
34023
|
+
["milestone", "emptyMilestone", XRegExp('(\\\\([a-z1-9]+)([ \\t]*\\|[ \\t]*[a-z1-9]+="[^\\|\\\\"]*")*\\\\[*])')],
|
|
34024
34024
|
["milestone", "startMilestoneTag", XRegExp("(\\\\([a-z1-9]+)-([se]))")],
|
|
34025
34025
|
["milestone", "endMilestoneMarker", XRegExp("(\\\\([*]))")],
|
|
34026
34026
|
["tag", "endTag", XRegExp("(\\\\([+]?[a-z\\-]+)([1-9]?(-([1-9]))?)[*])")],
|
|
34027
34027
|
["tag", "startTag", XRegExp("(\\\\([+]?[a-z\\-]+)([1-9]?(-([1-9]))?)[ \\t]?)")],
|
|
34028
34028
|
["bad", "bareSlash", XRegExp("(\\\\)")],
|
|
34029
34029
|
["printable", "eol", XRegExp("([ \\t]*[\\r\\n]+[ \\t]*)")],
|
|
34030
|
-
[
|
|
34030
|
+
// ['break', 'noBreakSpace', xre('~')],
|
|
34031
34031
|
["break", "softLineBreak", XRegExp("//")],
|
|
34032
34032
|
[
|
|
34033
34033
|
"printable",
|
|
34034
34034
|
"wordLike",
|
|
34035
|
-
XRegExp("([\\p{Letter}\\p{Number}\\p{Mark}\\u2060]{1,127})")
|
|
34035
|
+
XRegExp("([\\p{Letter}\\p{Number}\\p{Mark}\\u2060~]{1,127})")
|
|
34036
34036
|
],
|
|
34037
34037
|
["printable", "lineSpace", XRegExp("([\\p{Separator} ]{1,127})")],
|
|
34038
34038
|
[
|
|
@@ -34047,7 +34047,7 @@ const lexingRegexes = [
|
|
|
34047
34047
|
const mainRegex = XRegExp.union(lexingRegexes.map((x) => x[2]));
|
|
34048
34048
|
const makePrintable = (subclass, matchedBits) => ({
|
|
34049
34049
|
subclass,
|
|
34050
|
-
printValue: matchedBits[0]
|
|
34050
|
+
printValue: matchedBits[0].replace(/~/g, " ")
|
|
34051
34051
|
});
|
|
34052
34052
|
const makeChapter = (subclass, matchedBits) => ({
|
|
34053
34053
|
subclass,
|
|
@@ -34109,6 +34109,12 @@ const makeMilestone = (subclass, matchedBits) => {
|
|
|
34109
34109
|
ret.tagName = matchedBits[2];
|
|
34110
34110
|
if (subclass === "emptyMilestone") {
|
|
34111
34111
|
ret.printValue = `\\${ret.tagName}\\*`;
|
|
34112
|
+
ret.attributes = matchedBits[1] ? matchedBits[1].split("|").slice(1).map((a) => a.split("=")).map(
|
|
34113
|
+
(aa) => [
|
|
34114
|
+
aa[0],
|
|
34115
|
+
aa[1].replace(/"/g, "").replace(/[\\*]/g, "")
|
|
34116
|
+
]
|
|
34117
|
+
) : [];
|
|
34112
34118
|
} else {
|
|
34113
34119
|
ret.printValue = `\\${ret.tagName}`;
|
|
34114
34120
|
ret.sOrE = matchedBits[3];
|
|
@@ -39489,7 +39495,9 @@ const specs = (pt) => [
|
|
|
39489
39495
|
// EMPTY MILESTONE - add open and close scope
|
|
39490
39496
|
contexts: [["emptyMilestone"]],
|
|
39491
39497
|
parser: {
|
|
39492
|
-
during: (parser, pt2) =>
|
|
39498
|
+
during: (parser, pt2) => {
|
|
39499
|
+
parser.addEmptyMilestone(labelForScope$2("milestone", [pt2.tagName]));
|
|
39500
|
+
}
|
|
39493
39501
|
}
|
|
39494
39502
|
},
|
|
39495
39503
|
{
|
|
@@ -50474,11 +50482,11 @@ class Proskomma {
|
|
|
50474
50482
|
this.docSets[docSetId].docIds.push(doc.id);
|
|
50475
50483
|
this.docSets[docSetId].buildEnumIndexes();
|
|
50476
50484
|
}
|
|
50477
|
-
loadSuccinctDocSet(succinctOb) {
|
|
50485
|
+
loadSuccinctDocSet(succinctOb, bookCodes2) {
|
|
50478
50486
|
const succinctId = succinctOb.id;
|
|
50479
|
-
if (succinctId in this.docSets) {
|
|
50487
|
+
if (succinctId in this.docSets && !bookCodes2) {
|
|
50480
50488
|
throw new Error(
|
|
50481
|
-
`Attempting to succinct load docSet ${succinctId} which is already loaded`
|
|
50489
|
+
`Attempting to succinct load docSet ${succinctId} which is already loaded, without bookCodes argument`
|
|
50482
50490
|
);
|
|
50483
50491
|
}
|
|
50484
50492
|
const docSet = new DocSet(this, null, null, succinctOb);
|
|
@@ -50501,13 +50509,31 @@ class Proskomma {
|
|
|
50501
50509
|
}
|
|
50502
50510
|
docSet.buildPreEnums();
|
|
50503
50511
|
const docs = [];
|
|
50504
|
-
|
|
50512
|
+
const selectDocs = (dId) => !bookCodes2 || bookCodes2.includes(succinctOb.docs[dId].headers.bookCode);
|
|
50513
|
+
for (const docId of Object.keys(succinctOb.docs).filter(selectDocs)) {
|
|
50505
50514
|
let doc = this.newDocumentFromSuccinct(docId, succinctOb);
|
|
50506
50515
|
docs.push(doc);
|
|
50507
50516
|
}
|
|
50508
50517
|
docSet.preEnums = {};
|
|
50509
50518
|
return docs;
|
|
50510
50519
|
}
|
|
50520
|
+
augmentSuccinctDocSet(succinctOb, bookCodes2) {
|
|
50521
|
+
if (!bookCodes2 || bookCodes2.length === 0) {
|
|
50522
|
+
throw new Error("bookCodes argument must be present and contain at least one element in augmentSuccinctDocSet");
|
|
50523
|
+
}
|
|
50524
|
+
const selectDocs = (dId) => {
|
|
50525
|
+
const doc = succinctOb.docs[dId];
|
|
50526
|
+
return bookCodes2.includes(doc.headers.bookCode);
|
|
50527
|
+
};
|
|
50528
|
+
if (!this.docSets[succinctOb.id]) {
|
|
50529
|
+
throw new Error(`docSet id '${succinctOb.id}' not found in Proskomma when using augmentSuccinctDocSet. Load it first with optional bookCodes argument`);
|
|
50530
|
+
}
|
|
50531
|
+
for (const docId of Object.keys(succinctOb.docs).filter(selectDocs)) {
|
|
50532
|
+
if (!this.documents[docId]) {
|
|
50533
|
+
this.newDocumentFromSuccinct(docId, succinctOb);
|
|
50534
|
+
}
|
|
50535
|
+
}
|
|
50536
|
+
}
|
|
50511
50537
|
newDocumentFromSuccinct(docId, succinctOb) {
|
|
50512
50538
|
const doc = new Document(this, succinctOb.id);
|
|
50513
50539
|
doc.id = docId;
|