proskomma-core 0.10.3 → 0.10.5

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 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.3";
15989
+ const version = "0.10.5";
15990
15990
  const description$b = "A Scripture Runtime Engine";
15991
15991
  const files = [
15992
15992
  "dist"
@@ -16001,10 +16001,10 @@ const exports$1 = {
16001
16001
  };
16002
16002
  const scripts = {
16003
16003
  build: "rm -fr dist && vite build",
16004
- test: 'export PKSRC=dist && bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16005
- "win:test": 'set PKSRC=dist&& bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16006
- rawTest: 'export PKSRC=dist && bash -c "tape -r @babel/register test/code/*.cjs"',
16007
- oneTest: 'bash -c "tape -r @babel/register test/code/$TESTSCRIPT.cjs"',
16004
+ test: 'rm -fr dist && vite build && export PKSRC=dist && bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16005
+ "win:test": 'rm -fr dist && vite build && set PKSRC=dist&& bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16006
+ rawTest: 'rm -fr dist && vite build && export PKSRC=dist && bash -c "tape -r @babel/register test/code/*.cjs"',
16007
+ oneTest: 'rm -fr dist && vite build && bash -c "tape -r @babel/register test/code/$TESTSCRIPT.cjs"',
16008
16008
  prepublishOnly: "npm run build"
16009
16009
  };
16010
16010
  const repository = {
@@ -18602,12 +18602,27 @@ const unsuccinctifyItems = (docSet, succinct2, options2, nextToken, openScopes)
18602
18602
  let pos = 0;
18603
18603
  let tokenCount = nextToken || 0;
18604
18604
  const scopes = new Set(openScopes || []);
18605
+ const scopeEnums = [utils.itemDefs.itemEnum.startScope, utils.itemDefs.itemEnum.endScope];
18605
18606
  while (pos < succinct2.length) {
18606
18607
  const [itemLength, itemType, itemSubtype] = utils.succinct.headerBytes(
18607
18608
  succinct2,
18608
18609
  pos
18609
18610
  );
18610
- if ([utils.itemDefs.itemEnum.startScope, utils.itemDefs.itemEnum.endScope].includes(itemType)) {
18611
+ if (Object.keys(options2).length > 0) {
18612
+ if (!options2.scopes && scopeEnums.includes(itemType)) {
18613
+ pos += itemLength;
18614
+ continue;
18615
+ }
18616
+ if (!options2.tokens && itemType === utils.itemDefs.itemEnum.token) {
18617
+ pos += itemLength;
18618
+ continue;
18619
+ }
18620
+ if (!options2.grafts && itemType === utils.itemDefs.itemEnum.graft) {
18621
+ pos += itemLength;
18622
+ continue;
18623
+ }
18624
+ }
18625
+ if (scopeEnums.includes(itemType)) {
18611
18626
  const itemTypeName = utils.succinct.succinctScopeType(itemSubtype);
18612
18627
  if (Object.keys(options2).length > 0 && options2.scopes && options2.excludeScopeTypes && options2.excludeScopeTypes.includes(itemTypeName)) {
18613
18628
  pos += itemLength;
@@ -18626,23 +18641,14 @@ const unsuccinctifyItems = (docSet, succinct2, options2, nextToken, openScopes)
18626
18641
  ret.push(item);
18627
18642
  }
18628
18643
  } else if (item[0] === "scope" && item[1] === "start") {
18629
- scopes.add(item[2]);
18630
18644
  if (Object.keys(options2).length === 0 || options2.scopes) {
18631
- if (Object.keys(options2).length === 0 || !options2.excludeScopeTypes || options2.excludeScopeTypes.length === 0) {
18632
- ret.push(item);
18633
- } else if (!options2.excludeScopeTypes.includes(item[2].split("/")[0])) {
18634
- ret.push(item);
18635
- }
18645
+ scopes.add(item[2]);
18646
+ ret.push(item);
18636
18647
  }
18637
18648
  } else if (item[0] === "scope" && item[1] === "end") {
18638
- scopes.delete(item[2]);
18639
18649
  if (Object.keys(options2).length === 0 || options2.scopes) {
18640
- if (Object.keys(options2).length === 0 || !options2.excludeScopeTypes || options2.excludeScopeTypes.length === 0) {
18641
- ret.push(item);
18642
- } else if (!options2.excludeScopeTypes.includes(item[2].split("/")[0])) {
18643
- ret.push(item);
18644
- } else
18645
- ;
18650
+ scopes.delete(item[2]);
18651
+ ret.push(item);
18646
18652
  }
18647
18653
  } else if (item[0] === "graft") {
18648
18654
  if (Object.keys(options2).length === 0 || options2.grafts) {
@@ -44688,15 +44694,19 @@ const do_chapter_cv = (root, context, mainSequence, chapterN, includeContext) =>
44688
44694
  const ci = root.chapterIndex(chapterN);
44689
44695
  if (ci) {
44690
44696
  const block2 = mainSequence.blocks[ci.startBlock];
44691
- return [
44692
- [
44693
- updatedOpenScopes(
44694
- context.docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44695
- context.docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, ci.startItem + 1).filter((i) => i[0] === "scope")
44696
- ),
44697
- context.docSet.itemsByIndex(mainSequence, ci, includeContext || false).reduce((a, b) => a.concat([["token", "lineSpace", " "]].concat(b)))
44698
- ]
44699
- ];
44697
+ if (block2) {
44698
+ return [
44699
+ [
44700
+ updatedOpenScopes(
44701
+ context.docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44702
+ context.docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, ci.startItem + 1).filter((i) => i[0] === "scope")
44703
+ ),
44704
+ context.docSet.itemsByIndex(mainSequence, ci, includeContext || false).reduce((a, b) => a.concat([["token", "lineSpace", " "]].concat(b)))
44705
+ ]
44706
+ ];
44707
+ } else {
44708
+ return [];
44709
+ }
44700
44710
  } else {
44701
44711
  return [];
44702
44712
  }
@@ -44765,8 +44775,8 @@ const do_chapter_verse_array = (root, context, mainSequence, chapterN, verses, i
44765
44775
  for (const [chapter, verse] of chapterVerses) {
44766
44776
  if (cvis[chapter]) {
44767
44777
  let retItems = [];
44768
- let firstStartBlock;
44769
- let firstStartItem;
44778
+ let firstStartBlock = 0;
44779
+ let firstStartItem = 0;
44770
44780
  if (cvis[chapter][verse]) {
44771
44781
  for (const ve of cvis[chapter][verse]) {
44772
44782
  if (!firstStartBlock) {
@@ -44780,13 +44790,13 @@ const do_chapter_verse_array = (root, context, mainSequence, chapterN, verses, i
44780
44790
  );
44781
44791
  }
44782
44792
  const block2 = documentMainSequence.blocks[firstStartBlock];
44783
- retItemGroups.push([
44793
+ retItemGroups.push(block2 ? [
44784
44794
  updatedOpenScopes(
44785
44795
  docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44786
44796
  docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, firstStartItem + 1).filter((i) => i[0] === "scope")
44787
44797
  ),
44788
44798
  retItems
44789
- ]);
44799
+ ] : []);
44790
44800
  }
44791
44801
  }
44792
44802
  }
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.3";
15987
+ const version = "0.10.5";
15988
15988
  const description$b = "A Scripture Runtime Engine";
15989
15989
  const files = [
15990
15990
  "dist"
@@ -15999,10 +15999,10 @@ const exports = {
15999
15999
  };
16000
16000
  const scripts = {
16001
16001
  build: "rm -fr dist && vite build",
16002
- test: 'export PKSRC=dist && bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16003
- "win:test": 'set PKSRC=dist&& bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16004
- rawTest: 'export PKSRC=dist && bash -c "tape -r @babel/register test/code/*.cjs"',
16005
- oneTest: 'bash -c "tape -r @babel/register test/code/$TESTSCRIPT.cjs"',
16002
+ test: 'rm -fr dist && vite build && export PKSRC=dist && bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16003
+ "win:test": 'rm -fr dist && vite build && set PKSRC=dist&& bash -c "tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js"',
16004
+ rawTest: 'rm -fr dist && vite build && export PKSRC=dist && bash -c "tape -r @babel/register test/code/*.cjs"',
16005
+ oneTest: 'rm -fr dist && vite build && bash -c "tape -r @babel/register test/code/$TESTSCRIPT.cjs"',
16006
16006
  prepublishOnly: "npm run build"
16007
16007
  };
16008
16008
  const repository = {
@@ -18600,12 +18600,27 @@ const unsuccinctifyItems = (docSet, succinct2, options2, nextToken, openScopes)
18600
18600
  let pos = 0;
18601
18601
  let tokenCount = nextToken || 0;
18602
18602
  const scopes = new Set(openScopes || []);
18603
+ const scopeEnums = [utils.itemDefs.itemEnum.startScope, utils.itemDefs.itemEnum.endScope];
18603
18604
  while (pos < succinct2.length) {
18604
18605
  const [itemLength, itemType, itemSubtype] = utils.succinct.headerBytes(
18605
18606
  succinct2,
18606
18607
  pos
18607
18608
  );
18608
- if ([utils.itemDefs.itemEnum.startScope, utils.itemDefs.itemEnum.endScope].includes(itemType)) {
18609
+ if (Object.keys(options2).length > 0) {
18610
+ if (!options2.scopes && scopeEnums.includes(itemType)) {
18611
+ pos += itemLength;
18612
+ continue;
18613
+ }
18614
+ if (!options2.tokens && itemType === utils.itemDefs.itemEnum.token) {
18615
+ pos += itemLength;
18616
+ continue;
18617
+ }
18618
+ if (!options2.grafts && itemType === utils.itemDefs.itemEnum.graft) {
18619
+ pos += itemLength;
18620
+ continue;
18621
+ }
18622
+ }
18623
+ if (scopeEnums.includes(itemType)) {
18609
18624
  const itemTypeName = utils.succinct.succinctScopeType(itemSubtype);
18610
18625
  if (Object.keys(options2).length > 0 && options2.scopes && options2.excludeScopeTypes && options2.excludeScopeTypes.includes(itemTypeName)) {
18611
18626
  pos += itemLength;
@@ -18624,23 +18639,14 @@ const unsuccinctifyItems = (docSet, succinct2, options2, nextToken, openScopes)
18624
18639
  ret.push(item);
18625
18640
  }
18626
18641
  } else if (item[0] === "scope" && item[1] === "start") {
18627
- scopes.add(item[2]);
18628
18642
  if (Object.keys(options2).length === 0 || options2.scopes) {
18629
- if (Object.keys(options2).length === 0 || !options2.excludeScopeTypes || options2.excludeScopeTypes.length === 0) {
18630
- ret.push(item);
18631
- } else if (!options2.excludeScopeTypes.includes(item[2].split("/")[0])) {
18632
- ret.push(item);
18633
- }
18643
+ scopes.add(item[2]);
18644
+ ret.push(item);
18634
18645
  }
18635
18646
  } else if (item[0] === "scope" && item[1] === "end") {
18636
- scopes.delete(item[2]);
18637
18647
  if (Object.keys(options2).length === 0 || options2.scopes) {
18638
- if (Object.keys(options2).length === 0 || !options2.excludeScopeTypes || options2.excludeScopeTypes.length === 0) {
18639
- ret.push(item);
18640
- } else if (!options2.excludeScopeTypes.includes(item[2].split("/")[0])) {
18641
- ret.push(item);
18642
- } else
18643
- ;
18648
+ scopes.delete(item[2]);
18649
+ ret.push(item);
18644
18650
  }
18645
18651
  } else if (item[0] === "graft") {
18646
18652
  if (Object.keys(options2).length === 0 || options2.grafts) {
@@ -44686,15 +44692,19 @@ const do_chapter_cv = (root, context, mainSequence, chapterN, includeContext) =>
44686
44692
  const ci = root.chapterIndex(chapterN);
44687
44693
  if (ci) {
44688
44694
  const block2 = mainSequence.blocks[ci.startBlock];
44689
- return [
44690
- [
44691
- updatedOpenScopes(
44692
- context.docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44693
- context.docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, ci.startItem + 1).filter((i) => i[0] === "scope")
44694
- ),
44695
- context.docSet.itemsByIndex(mainSequence, ci, includeContext || false).reduce((a, b) => a.concat([["token", "lineSpace", " "]].concat(b)))
44696
- ]
44697
- ];
44695
+ if (block2) {
44696
+ return [
44697
+ [
44698
+ updatedOpenScopes(
44699
+ context.docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44700
+ context.docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, ci.startItem + 1).filter((i) => i[0] === "scope")
44701
+ ),
44702
+ context.docSet.itemsByIndex(mainSequence, ci, includeContext || false).reduce((a, b) => a.concat([["token", "lineSpace", " "]].concat(b)))
44703
+ ]
44704
+ ];
44705
+ } else {
44706
+ return [];
44707
+ }
44698
44708
  } else {
44699
44709
  return [];
44700
44710
  }
@@ -44763,8 +44773,8 @@ const do_chapter_verse_array = (root, context, mainSequence, chapterN, verses, i
44763
44773
  for (const [chapter, verse] of chapterVerses) {
44764
44774
  if (cvis[chapter]) {
44765
44775
  let retItems = [];
44766
- let firstStartBlock;
44767
- let firstStartItem;
44776
+ let firstStartBlock = 0;
44777
+ let firstStartItem = 0;
44768
44778
  if (cvis[chapter][verse]) {
44769
44779
  for (const ve of cvis[chapter][verse]) {
44770
44780
  if (!firstStartBlock) {
@@ -44778,13 +44788,13 @@ const do_chapter_verse_array = (root, context, mainSequence, chapterN, verses, i
44778
44788
  );
44779
44789
  }
44780
44790
  const block2 = documentMainSequence.blocks[firstStartBlock];
44781
- retItemGroups.push([
44791
+ retItemGroups.push(block2 ? [
44782
44792
  updatedOpenScopes(
44783
44793
  docSet.unsuccinctifyScopes(block2.os).map((s) => s[2]),
44784
44794
  docSet.unsuccinctifyItems(block2.c, {}, 0, []).slice(0, firstStartItem + 1).filter((i) => i[0] === "scope")
44785
44795
  ),
44786
44796
  retItems
44787
- ]);
44797
+ ] : []);
44788
44798
  }
44789
44799
  }
44790
44800
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "proskomma-core",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "A Scripture Runtime Engine",
5
5
  "files": [
6
6
  "dist"
@@ -15,10 +15,10 @@
15
15
  },
16
16
  "scripts": {
17
17
  "build": "rm -fr dist && vite build",
18
- "test": "export PKSRC=dist && bash -c \"tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js\"",
19
- "win:test": "set PKSRC=dist&& bash -c \"tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js\"",
20
- "rawTest": "export PKSRC=dist && bash -c \"tape -r @babel/register test/code/*.cjs\"",
21
- "oneTest": "bash -c \"tape -r @babel/register test/code/$TESTSCRIPT.cjs\"",
18
+ "test": "rm -fr dist && vite build && export PKSRC=dist && bash -c \"tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js\"",
19
+ "win:test": "rm -fr dist && vite build && set PKSRC=dist&& bash -c \"tape -r @babel/register test/code/**/*.cjs | node_modules/tap-summary/bin/cmd.js\"",
20
+ "rawTest": "rm -fr dist && vite build && export PKSRC=dist && bash -c \"tape -r @babel/register test/code/*.cjs\"",
21
+ "oneTest": "rm -fr dist && vite build && bash -c \"tape -r @babel/register test/code/$TESTSCRIPT.cjs\"",
22
22
  "prepublishOnly": "npm run build"
23
23
  },
24
24
  "repository": {