@claritylabs/cl-sdk 3.0.20 → 3.0.21
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 +26 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +26 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -9324,6 +9324,7 @@ function pageTitleFromText(text, fallback) {
|
|
|
9324
9324
|
const endorsement = normalized.match(/\bENDORSEMENT\s+(?:NO\.?|NUMBER|#)\s*[A-Z0-9][A-Z0-9.-]*\b/i)?.[0];
|
|
9325
9325
|
if (endorsement) return cleanText(endorsement, fallback);
|
|
9326
9326
|
const firstSentence = normalized.split(/(?<=\.)\s+/)[0];
|
|
9327
|
+
if (/^page\s+\d+\b/i.test(firstSentence)) return fallback;
|
|
9327
9328
|
if (firstSentence && firstSentence.length <= 120) return firstSentence.replace(/[.]$/, "");
|
|
9328
9329
|
return fallback;
|
|
9329
9330
|
}
|
|
@@ -9588,33 +9589,44 @@ function reparentNodes(sourceTree, childIds, parentId, organizerRepair) {
|
|
|
9588
9589
|
function applySemanticPageGrouping(sourceTree) {
|
|
9589
9590
|
const relabeled = sourceTree.map((node) => {
|
|
9590
9591
|
if (node.kind === "document" || node.kind === "page_group") return node;
|
|
9591
|
-
|
|
9592
|
-
if (
|
|
9592
|
+
let nextNode = node;
|
|
9593
|
+
if (node.kind === "page" && /^page\s+\d+$/i.test(node.title)) {
|
|
9594
|
+
const title = pageTitleFromText(sourceNodeText(node), node.title);
|
|
9595
|
+
if (title !== node.title) {
|
|
9596
|
+
nextNode = {
|
|
9597
|
+
...node,
|
|
9598
|
+
title: simplifyOrganizerTitle(title, title, node.kind),
|
|
9599
|
+
metadata: { ...node.metadata, organizerRepair: "semantic_page_title" }
|
|
9600
|
+
};
|
|
9601
|
+
}
|
|
9602
|
+
}
|
|
9603
|
+
const endorsement = endorsementStartTitle(nextNode);
|
|
9604
|
+
if (endorsement && nextNode.kind === "page") {
|
|
9593
9605
|
return {
|
|
9594
|
-
...
|
|
9606
|
+
...nextNode,
|
|
9595
9607
|
kind: "endorsement",
|
|
9596
9608
|
title: endorsement,
|
|
9597
|
-
description: endorsementDescription(endorsement,
|
|
9598
|
-
metadata: { ...
|
|
9609
|
+
description: endorsementDescription(endorsement, nextNode),
|
|
9610
|
+
metadata: { ...nextNode.metadata, organizerRepair: "semantic_page_grouping" }
|
|
9599
9611
|
};
|
|
9600
9612
|
}
|
|
9601
|
-
if (
|
|
9613
|
+
if (nextNode.kind === "page" && looksLikeDeclarationsStart(nextNode)) {
|
|
9602
9614
|
return {
|
|
9603
|
-
...
|
|
9615
|
+
...nextNode,
|
|
9604
9616
|
title: "Declarations",
|
|
9605
|
-
description: cleanText([
|
|
9606
|
-
metadata: { ...
|
|
9617
|
+
description: cleanText([nextNode.description, "Declarations"].join(" "), "Declarations"),
|
|
9618
|
+
metadata: { ...nextNode.metadata, organizerRepair: "semantic_page_grouping" }
|
|
9607
9619
|
};
|
|
9608
9620
|
}
|
|
9609
|
-
if (
|
|
9621
|
+
if (nextNode.kind === "page" && looksLikePolicyFormStart(nextNode)) {
|
|
9610
9622
|
return {
|
|
9611
|
-
...
|
|
9623
|
+
...nextNode,
|
|
9612
9624
|
title: "Policy Form",
|
|
9613
|
-
description: cleanText([
|
|
9614
|
-
metadata: { ...
|
|
9625
|
+
description: cleanText([nextNode.description, "Policy Form"].join(" "), "Policy Form"),
|
|
9626
|
+
metadata: { ...nextNode.metadata, organizerRepair: "semantic_page_grouping" }
|
|
9615
9627
|
};
|
|
9616
9628
|
}
|
|
9617
|
-
return
|
|
9629
|
+
return nextNode;
|
|
9618
9630
|
});
|
|
9619
9631
|
const rootId = sourceTreeRootId(relabeled);
|
|
9620
9632
|
const children = (nodesByParent(relabeled).get(rootId) ?? []).filter((node) => node.kind !== "document").sort((left, right) => left.order - right.order);
|