@open-agreements/open-agreements 0.2.2 → 0.3.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/README.md +30 -0
- package/content/templates/closing-checklist/template.docx +0 -0
- package/content/templates/common-paper-ai-addendum/README.md +18 -0
- package/content/templates/common-paper-ai-addendum/metadata.yaml +136 -0
- package/content/templates/common-paper-ai-addendum/replacements.json +5 -0
- package/content/templates/common-paper-ai-addendum/selections.json +62 -0
- package/content/templates/common-paper-ai-addendum/template.docx +0 -0
- package/content/templates/common-paper-ai-addendum-in-app/metadata.yaml +88 -0
- package/content/templates/common-paper-ai-addendum-in-app/replacements.json +5 -0
- package/content/templates/common-paper-ai-addendum-in-app/selections.json +62 -0
- package/content/templates/common-paper-amendment/README.md +18 -0
- package/content/templates/common-paper-amendment/metadata.yaml +48 -0
- package/content/templates/common-paper-amendment/template.docx +0 -0
- package/content/templates/common-paper-business-associate-agreement/README.md +20 -1
- package/content/templates/common-paper-business-associate-agreement/metadata.yaml +111 -3
- package/content/templates/common-paper-business-associate-agreement/replacements.json +2 -1
- package/content/templates/common-paper-business-associate-agreement/selections.json +38 -0
- package/content/templates/common-paper-business-associate-agreement/template.docx +0 -0
- package/content/templates/common-paper-cloud-service-agreement/README.md +18 -0
- package/content/templates/common-paper-cloud-service-agreement/metadata.yaml +48 -0
- package/content/templates/common-paper-cloud-service-agreement/template.docx +0 -0
- package/content/templates/common-paper-csa-with-ai/README.md +18 -0
- package/content/templates/common-paper-csa-with-ai/metadata.yaml +462 -2
- package/content/templates/common-paper-csa-with-ai/replacements.json +5 -2
- package/content/templates/common-paper-csa-with-ai/selections.json +291 -0
- package/content/templates/common-paper-csa-with-ai/template.docx +0 -0
- package/content/templates/common-paper-csa-with-sla/README.md +18 -0
- package/content/templates/common-paper-csa-with-sla/metadata.yaml +387 -2
- package/content/templates/common-paper-csa-with-sla/replacements.json +4 -2
- package/content/templates/common-paper-csa-with-sla/selections.json +257 -0
- package/content/templates/common-paper-csa-with-sla/template.docx +0 -0
- package/content/templates/common-paper-csa-without-sla/README.md +18 -0
- package/content/templates/common-paper-csa-without-sla/metadata.yaml +380 -2
- package/content/templates/common-paper-csa-without-sla/replacements.json +5 -2
- package/content/templates/common-paper-csa-without-sla/selections.json +250 -0
- package/content/templates/common-paper-csa-without-sla/template.docx +0 -0
- package/content/templates/common-paper-data-processing-agreement/README.md +16 -0
- package/content/templates/common-paper-data-processing-agreement/metadata.yaml +397 -3
- package/content/templates/common-paper-data-processing-agreement/replacements.json +2 -1
- package/content/templates/common-paper-data-processing-agreement/selections.json +211 -0
- package/content/templates/common-paper-data-processing-agreement/template.docx +0 -0
- package/content/templates/common-paper-design-partner-agreement/README.md +18 -0
- package/content/templates/common-paper-design-partner-agreement/metadata.yaml +99 -3
- package/content/templates/common-paper-design-partner-agreement/selections.json +27 -0
- package/content/templates/common-paper-design-partner-agreement/template.docx +0 -0
- package/content/templates/common-paper-independent-contractor-agreement/README.md +18 -0
- package/content/templates/common-paper-independent-contractor-agreement/clean.json +8 -0
- package/content/templates/common-paper-independent-contractor-agreement/metadata.yaml +52 -0
- package/content/templates/common-paper-independent-contractor-agreement/replacements.json +3 -0
- package/content/templates/common-paper-independent-contractor-agreement/template.docx +0 -0
- package/content/templates/common-paper-letter-of-intent/README.md +18 -0
- package/content/templates/common-paper-letter-of-intent/metadata.yaml +48 -0
- package/content/templates/common-paper-letter-of-intent/template.docx +0 -0
- package/content/templates/common-paper-mutual-nda/README.md +29 -7
- package/content/templates/common-paper-mutual-nda/metadata.yaml +48 -0
- package/content/templates/common-paper-mutual-nda/template.docx +0 -0
- package/content/templates/common-paper-one-way-nda/README.md +13 -0
- package/content/templates/common-paper-one-way-nda/metadata.yaml +24 -0
- package/content/templates/common-paper-one-way-nda/selections.json +38 -0
- package/content/templates/common-paper-one-way-nda/template.docx +0 -0
- package/content/templates/common-paper-order-form/README.md +18 -0
- package/content/templates/common-paper-order-form/metadata.yaml +115 -3
- package/content/templates/common-paper-order-form/replacements.json +5 -2
- package/content/templates/common-paper-order-form/selections.json +56 -0
- package/content/templates/common-paper-order-form/template.docx +0 -0
- package/content/templates/common-paper-order-form-with-sla/README.md +18 -0
- package/content/templates/common-paper-order-form-with-sla/metadata.yaml +149 -3
- package/content/templates/common-paper-order-form-with-sla/replacements.json +6 -2
- package/content/templates/common-paper-order-form-with-sla/selections.json +64 -0
- package/content/templates/common-paper-order-form-with-sla/template.docx +0 -0
- package/content/templates/common-paper-partnership-agreement/README.md +18 -0
- package/content/templates/common-paper-partnership-agreement/metadata.yaml +293 -4
- package/content/templates/common-paper-partnership-agreement/replacements.json +5 -2
- package/content/templates/common-paper-partnership-agreement/selections.json +138 -0
- package/content/templates/common-paper-partnership-agreement/template.docx +0 -0
- package/content/templates/common-paper-pilot-agreement/README.md +18 -0
- package/content/templates/common-paper-pilot-agreement/metadata.yaml +48 -0
- package/content/templates/common-paper-pilot-agreement/template.docx +0 -0
- package/content/templates/common-paper-professional-services-agreement/README.md +18 -0
- package/content/templates/common-paper-professional-services-agreement/metadata.yaml +338 -4
- package/content/templates/common-paper-professional-services-agreement/replacements.json +7 -4
- package/content/templates/common-paper-professional-services-agreement/selections.json +207 -0
- package/content/templates/common-paper-professional-services-agreement/template.docx +0 -0
- package/content/templates/common-paper-statement-of-work/README.md +18 -0
- package/content/templates/common-paper-statement-of-work/metadata.yaml +110 -2
- package/content/templates/common-paper-statement-of-work/replacements.json +4 -1
- package/content/templates/common-paper-statement-of-work/selections.json +55 -0
- package/content/templates/common-paper-statement-of-work/template.docx +0 -0
- package/content/templates/common-paper-term-sheet/README.md +18 -0
- package/content/templates/common-paper-term-sheet/metadata.yaml +48 -0
- package/content/templates/common-paper-term-sheet/template.docx +0 -0
- package/content/templates/working-group-list/template.docx +0 -0
- package/dist/commands/checklist.d.ts.map +1 -1
- package/dist/commands/checklist.js +2 -1
- package/dist/commands/checklist.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +1 -46
- package/dist/commands/list.js.map +1 -1
- package/dist/core/checklist/format-checklist-docx.d.ts +10 -0
- package/dist/core/checklist/format-checklist-docx.d.ts.map +1 -0
- package/dist/core/checklist/format-checklist-docx.js +321 -0
- package/dist/core/checklist/format-checklist-docx.js.map +1 -0
- package/dist/core/checklist/index.d.ts +1 -0
- package/dist/core/checklist/index.d.ts.map +1 -1
- package/dist/core/checklist/index.js +7 -3
- package/dist/core/checklist/index.js.map +1 -1
- package/dist/core/engine.d.ts +1 -0
- package/dist/core/engine.d.ts.map +1 -1
- package/dist/core/engine.js +72 -11
- package/dist/core/engine.js.map +1 -1
- package/dist/core/selector.d.ts +2 -0
- package/dist/core/selector.d.ts.map +1 -1
- package/dist/core/selector.js +181 -39
- package/dist/core/selector.js.map +1 -1
- package/dist/core/template-listing.d.ts +40 -0
- package/dist/core/template-listing.d.ts.map +1 -0
- package/dist/core/template-listing.js +91 -0
- package/dist/core/template-listing.js.map +1 -0
- package/dist/core/validation/template.d.ts.map +1 -1
- package/dist/core/validation/template.js +10 -2
- package/dist/core/validation/template.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/package.json +8 -2
- package/skills/iso-27001-evidence-collection/CONNECTORS.md +25 -9
- package/skills/iso-27001-evidence-collection/SKILL.md +10 -6
- package/skills/iso-27001-internal-audit/CONNECTORS.md +25 -9
- package/skills/iso-27001-internal-audit/SKILL.md +12 -9
- package/skills/soc2-readiness/CONNECTORS.md +25 -9
- package/skills/soc2-readiness/SKILL.md +17 -5
- package/skills/soc2-readiness/rules/change-vendor-management.md +104 -0
- package/skills/soc2-readiness/rules/communication-info.md +85 -0
- package/skills/soc2-readiness/rules/control-activities.md +95 -0
- package/skills/soc2-readiness/rules/control-environment.md +126 -0
- package/skills/soc2-readiness/rules/logical-access.md +264 -0
- package/skills/soc2-readiness/rules/monitoring-activities.md +66 -0
- package/skills/soc2-readiness/rules/optional-categories.md +264 -0
- package/skills/soc2-readiness/rules/privacy-criteria.md +359 -0
- package/skills/soc2-readiness/rules/risk-assessment.md +100 -0
- package/skills/soc2-readiness/rules/system-operations.md +170 -0
- package/skills/soc2-readiness/rules/trust-services.md +0 -230
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Post-fill formatter for closing-checklist DOCX files.
|
|
3
|
+
*
|
|
4
|
+
* After docx-templates fills the template, every row looks identical.
|
|
5
|
+
* This formatter opens the DOCX, finds the Documents table, classifies
|
|
6
|
+
* each row (stage heading, main entry, citation, signatory, action, issue),
|
|
7
|
+
* and applies semantic XML formatting: bold, italic, color, indentation.
|
|
8
|
+
*/
|
|
9
|
+
import AdmZip from 'adm-zip';
|
|
10
|
+
import { DOMParser, XMLSerializer } from '@xmldom/xmldom';
|
|
11
|
+
const W_NS = 'http://schemas.openxmlformats.org/wordprocessingml/2006/main';
|
|
12
|
+
const DOCUMENTS_HEADERS = ['No.', 'Title', 'Status', 'Responsible Party'];
|
|
13
|
+
function classifyRow(numberText, titleText) {
|
|
14
|
+
// Stage heading: number cell empty, title matches roman numeral pattern
|
|
15
|
+
if (!numberText.trim() && /^[IVX]+\.\s/.test(titleText.trim())) {
|
|
16
|
+
return 'stage_heading';
|
|
17
|
+
}
|
|
18
|
+
// Main entry: number cell non-empty
|
|
19
|
+
if (numberText.trim()) {
|
|
20
|
+
return 'main_entry';
|
|
21
|
+
}
|
|
22
|
+
// Sub-rows: number cell empty, classify by title content
|
|
23
|
+
const stripped = titleText.replace(/^\u00A0+/, '').trim();
|
|
24
|
+
if (stripped.startsWith('Ref:'))
|
|
25
|
+
return 'citation';
|
|
26
|
+
if (/^\u2610\s+Signatory:|^\u2611\s+Signatory:|^Signatory:/.test(stripped))
|
|
27
|
+
return 'signatory';
|
|
28
|
+
if (/^\u2610\s+Action\s|^\u2611\s+Action\s|^Action\s/.test(stripped))
|
|
29
|
+
return 'action';
|
|
30
|
+
if (/^\u2610\s+Issue\s|^\u2611\s+Issue\s|^Issue\s/.test(stripped))
|
|
31
|
+
return 'issue';
|
|
32
|
+
return 'unknown';
|
|
33
|
+
}
|
|
34
|
+
// ---------------------------------------------------------------------------
|
|
35
|
+
// XML helpers (same patterns as recipe/patcher.ts)
|
|
36
|
+
// ---------------------------------------------------------------------------
|
|
37
|
+
function ensureRunProperties(run) {
|
|
38
|
+
const doc = run.ownerDocument;
|
|
39
|
+
const children = run.childNodes;
|
|
40
|
+
for (let i = 0; i < children.length; i++) {
|
|
41
|
+
const child = children[i];
|
|
42
|
+
if (child.localName === 'rPr' && child.namespaceURI === W_NS) {
|
|
43
|
+
return child;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const rPr = doc.createElementNS(W_NS, 'w:rPr');
|
|
47
|
+
run.insertBefore(rPr, run.firstChild);
|
|
48
|
+
return rPr;
|
|
49
|
+
}
|
|
50
|
+
function setRunBold(run) {
|
|
51
|
+
const rPr = ensureRunProperties(run);
|
|
52
|
+
// Check if <w:b/> already exists
|
|
53
|
+
const children = rPr.childNodes;
|
|
54
|
+
for (let i = 0; i < children.length; i++) {
|
|
55
|
+
const child = children[i];
|
|
56
|
+
if (child.localName === 'b' && child.namespaceURI === W_NS)
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const doc = run.ownerDocument;
|
|
60
|
+
const b = doc.createElementNS(W_NS, 'w:b');
|
|
61
|
+
rPr.appendChild(b);
|
|
62
|
+
}
|
|
63
|
+
function setRunItalic(run) {
|
|
64
|
+
const rPr = ensureRunProperties(run);
|
|
65
|
+
const children = rPr.childNodes;
|
|
66
|
+
for (let i = 0; i < children.length; i++) {
|
|
67
|
+
const child = children[i];
|
|
68
|
+
if (child.localName === 'i' && child.namespaceURI === W_NS)
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const doc = run.ownerDocument;
|
|
72
|
+
const iEl = doc.createElementNS(W_NS, 'w:i');
|
|
73
|
+
rPr.appendChild(iEl);
|
|
74
|
+
}
|
|
75
|
+
function setRunColor(run, colorHex) {
|
|
76
|
+
const rPr = ensureRunProperties(run);
|
|
77
|
+
const doc = run.ownerDocument;
|
|
78
|
+
const children = rPr.childNodes;
|
|
79
|
+
for (let i = 0; i < children.length; i++) {
|
|
80
|
+
const child = children[i];
|
|
81
|
+
if (child.localName === 'color' && child.namespaceURI === W_NS) {
|
|
82
|
+
child.setAttributeNS(W_NS, 'w:val', colorHex);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
const color = doc.createElementNS(W_NS, 'w:color');
|
|
87
|
+
color.setAttributeNS(W_NS, 'w:val', colorHex);
|
|
88
|
+
rPr.appendChild(color);
|
|
89
|
+
}
|
|
90
|
+
function ensureParagraphProperties(para) {
|
|
91
|
+
const doc = para.ownerDocument;
|
|
92
|
+
const children = para.childNodes;
|
|
93
|
+
for (let i = 0; i < children.length; i++) {
|
|
94
|
+
const child = children[i];
|
|
95
|
+
if (child.localName === 'pPr' && child.namespaceURI === W_NS) {
|
|
96
|
+
return child;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
const pPr = doc.createElementNS(W_NS, 'w:pPr');
|
|
100
|
+
para.insertBefore(pPr, para.firstChild);
|
|
101
|
+
return pPr;
|
|
102
|
+
}
|
|
103
|
+
function setParagraphIndent(para, leftDxa) {
|
|
104
|
+
const pPr = ensureParagraphProperties(para);
|
|
105
|
+
const doc = para.ownerDocument;
|
|
106
|
+
// Find or create <w:ind>
|
|
107
|
+
const children = pPr.childNodes;
|
|
108
|
+
for (let i = 0; i < children.length; i++) {
|
|
109
|
+
const child = children[i];
|
|
110
|
+
if (child.localName === 'ind' && child.namespaceURI === W_NS) {
|
|
111
|
+
child.setAttributeNS(W_NS, 'w:left', String(leftDxa));
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
const ind = doc.createElementNS(W_NS, 'w:ind');
|
|
116
|
+
ind.setAttributeNS(W_NS, 'w:left', String(leftDxa));
|
|
117
|
+
pPr.appendChild(ind);
|
|
118
|
+
}
|
|
119
|
+
// ---------------------------------------------------------------------------
|
|
120
|
+
// NBSP indent handling
|
|
121
|
+
// ---------------------------------------------------------------------------
|
|
122
|
+
const NBSP = '\u00A0';
|
|
123
|
+
const DXA_PER_LEVEL = 360;
|
|
124
|
+
/**
|
|
125
|
+
* Count leading NBSP pairs in all text nodes of a table cell,
|
|
126
|
+
* strip them from the text content, and return the indent level.
|
|
127
|
+
*/
|
|
128
|
+
function countAndStripNbspIndent(tc) {
|
|
129
|
+
const paragraphs = tc.getElementsByTagNameNS(W_NS, 'p');
|
|
130
|
+
let maxLevel = 0;
|
|
131
|
+
for (let p = 0; p < paragraphs.length; p++) {
|
|
132
|
+
const runs = paragraphs[p].getElementsByTagNameNS(W_NS, 'r');
|
|
133
|
+
if (runs.length === 0)
|
|
134
|
+
continue;
|
|
135
|
+
// Collect full text to count leading NBSPs
|
|
136
|
+
let fullText = '';
|
|
137
|
+
for (let r = 0; r < runs.length; r++) {
|
|
138
|
+
const tEls = runs[r].getElementsByTagNameNS(W_NS, 't');
|
|
139
|
+
for (let t = 0; t < tEls.length; t++) {
|
|
140
|
+
fullText += tEls[t].textContent ?? '';
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
// Count leading NBSP pairs
|
|
144
|
+
let nbspCount = 0;
|
|
145
|
+
for (let i = 0; i < fullText.length; i++) {
|
|
146
|
+
if (fullText[i] === NBSP) {
|
|
147
|
+
nbspCount++;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
const level = Math.floor(nbspCount / 2);
|
|
154
|
+
if (level > maxLevel)
|
|
155
|
+
maxLevel = level;
|
|
156
|
+
if (nbspCount > 0) {
|
|
157
|
+
// Strip leading NBSPs from text runs
|
|
158
|
+
let remaining = nbspCount;
|
|
159
|
+
for (let r = 0; r < runs.length && remaining > 0; r++) {
|
|
160
|
+
const tEls = runs[r].getElementsByTagNameNS(W_NS, 't');
|
|
161
|
+
for (let t = 0; t < tEls.length && remaining > 0; t++) {
|
|
162
|
+
const text = tEls[t].textContent ?? '';
|
|
163
|
+
let stripCount = 0;
|
|
164
|
+
for (let c = 0; c < text.length && remaining > 0; c++) {
|
|
165
|
+
if (text[c] === NBSP) {
|
|
166
|
+
stripCount++;
|
|
167
|
+
remaining--;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
if (stripCount > 0) {
|
|
174
|
+
const newText = text.slice(stripCount);
|
|
175
|
+
tEls[t].textContent = newText;
|
|
176
|
+
if (newText.startsWith(' ') || newText.endsWith(' ') || newText === '') {
|
|
177
|
+
tEls[t].setAttribute('xml:space', 'preserve');
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
// Set paragraph indent
|
|
183
|
+
if (level > 0) {
|
|
184
|
+
setParagraphIndent(paragraphs[p], level * DXA_PER_LEVEL);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return maxLevel;
|
|
189
|
+
}
|
|
190
|
+
// ---------------------------------------------------------------------------
|
|
191
|
+
// Cell text extraction
|
|
192
|
+
// ---------------------------------------------------------------------------
|
|
193
|
+
function getCellText(tc) {
|
|
194
|
+
const tNodes = tc.getElementsByTagNameNS(W_NS, 't');
|
|
195
|
+
const parts = [];
|
|
196
|
+
for (let i = 0; i < tNodes.length; i++) {
|
|
197
|
+
parts.push(tNodes[i].textContent ?? '');
|
|
198
|
+
}
|
|
199
|
+
return parts.join('');
|
|
200
|
+
}
|
|
201
|
+
// ---------------------------------------------------------------------------
|
|
202
|
+
// Apply formatting to all runs in a cell
|
|
203
|
+
// ---------------------------------------------------------------------------
|
|
204
|
+
function getAllRunsInCell(tc) {
|
|
205
|
+
const runs = [];
|
|
206
|
+
const rNodes = tc.getElementsByTagNameNS(W_NS, 'r');
|
|
207
|
+
for (let i = 0; i < rNodes.length; i++) {
|
|
208
|
+
runs.push(rNodes[i]);
|
|
209
|
+
}
|
|
210
|
+
return runs;
|
|
211
|
+
}
|
|
212
|
+
function formatCellRuns(tc, format) {
|
|
213
|
+
const runs = getAllRunsInCell(tc);
|
|
214
|
+
for (const run of runs) {
|
|
215
|
+
if (format.bold)
|
|
216
|
+
setRunBold(run);
|
|
217
|
+
if (format.italic)
|
|
218
|
+
setRunItalic(run);
|
|
219
|
+
if (format.color)
|
|
220
|
+
setRunColor(run, format.color);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
// ---------------------------------------------------------------------------
|
|
224
|
+
// Find Documents table by matching header row
|
|
225
|
+
// ---------------------------------------------------------------------------
|
|
226
|
+
function findDocumentsTable(xmlDoc) {
|
|
227
|
+
const tables = xmlDoc.getElementsByTagNameNS(W_NS, 'tbl');
|
|
228
|
+
for (let t = 0; t < tables.length; t++) {
|
|
229
|
+
const table = tables[t];
|
|
230
|
+
const rows = getDirectChildRows(table);
|
|
231
|
+
if (rows.length === 0)
|
|
232
|
+
continue;
|
|
233
|
+
const headerRow = rows[0];
|
|
234
|
+
const cells = getDirectChildCells(headerRow);
|
|
235
|
+
const headerTexts = cells.map((c) => getCellText(c).trim());
|
|
236
|
+
if (headerTexts.length === DOCUMENTS_HEADERS.length &&
|
|
237
|
+
headerTexts.every((text, i) => text === DOCUMENTS_HEADERS[i])) {
|
|
238
|
+
return table;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return null;
|
|
242
|
+
}
|
|
243
|
+
function getDirectChildRows(table) {
|
|
244
|
+
const rows = [];
|
|
245
|
+
const children = table.childNodes;
|
|
246
|
+
for (let i = 0; i < children.length; i++) {
|
|
247
|
+
const child = children[i];
|
|
248
|
+
if (child.nodeType === 1) {
|
|
249
|
+
const el = child;
|
|
250
|
+
if (el.localName === 'tr' && el.namespaceURI === W_NS) {
|
|
251
|
+
rows.push(el);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
return rows;
|
|
256
|
+
}
|
|
257
|
+
function getDirectChildCells(row) {
|
|
258
|
+
const cells = [];
|
|
259
|
+
const children = row.childNodes;
|
|
260
|
+
for (let i = 0; i < children.length; i++) {
|
|
261
|
+
const child = children[i];
|
|
262
|
+
if (child.nodeType === 1) {
|
|
263
|
+
const el = child;
|
|
264
|
+
if (el.localName === 'tc' && el.namespaceURI === W_NS) {
|
|
265
|
+
cells.push(el);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
return cells;
|
|
270
|
+
}
|
|
271
|
+
// ---------------------------------------------------------------------------
|
|
272
|
+
// Main formatter
|
|
273
|
+
// ---------------------------------------------------------------------------
|
|
274
|
+
export async function formatChecklistDocx(docxPath) {
|
|
275
|
+
const zip = new AdmZip(docxPath);
|
|
276
|
+
const entry = zip.getEntry('word/document.xml');
|
|
277
|
+
if (!entry)
|
|
278
|
+
return;
|
|
279
|
+
const xmlStr = entry.getData().toString('utf-8');
|
|
280
|
+
const xmlDoc = new DOMParser().parseFromString(xmlStr, 'text/xml');
|
|
281
|
+
const docsTable = findDocumentsTable(xmlDoc);
|
|
282
|
+
if (!docsTable)
|
|
283
|
+
return;
|
|
284
|
+
const rows = getDirectChildRows(docsTable);
|
|
285
|
+
// Skip header row (index 0)
|
|
286
|
+
for (let r = 1; r < rows.length; r++) {
|
|
287
|
+
const cells = getDirectChildCells(rows[r]);
|
|
288
|
+
if (cells.length < 2)
|
|
289
|
+
continue;
|
|
290
|
+
const numberText = getCellText(cells[0]);
|
|
291
|
+
const titleText = getCellText(cells[1]);
|
|
292
|
+
const rowType = classifyRow(numberText, titleText);
|
|
293
|
+
// Convert NBSP indentation to OOXML indent on title cell
|
|
294
|
+
countAndStripNbspIndent(cells[1]);
|
|
295
|
+
const titleCell = cells[1];
|
|
296
|
+
switch (rowType) {
|
|
297
|
+
case 'stage_heading':
|
|
298
|
+
formatCellRuns(titleCell, { italic: true, color: '8C8D8E' });
|
|
299
|
+
break;
|
|
300
|
+
case 'main_entry':
|
|
301
|
+
formatCellRuns(titleCell, { bold: true });
|
|
302
|
+
break;
|
|
303
|
+
case 'citation':
|
|
304
|
+
formatCellRuns(titleCell, { italic: true, color: '494A4B' });
|
|
305
|
+
break;
|
|
306
|
+
case 'signatory':
|
|
307
|
+
case 'action':
|
|
308
|
+
case 'issue':
|
|
309
|
+
// Normal formatting; checkboxes already in text
|
|
310
|
+
break;
|
|
311
|
+
case 'unknown':
|
|
312
|
+
break;
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
// Serialize and write back
|
|
316
|
+
const serializer = new XMLSerializer();
|
|
317
|
+
const updatedXml = serializer.serializeToString(xmlDoc);
|
|
318
|
+
zip.updateFile('word/document.xml', Buffer.from(updatedXml, 'utf-8'));
|
|
319
|
+
zip.writeZip(docxPath);
|
|
320
|
+
}
|
|
321
|
+
//# sourceMappingURL=format-checklist-docx.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-checklist-docx.js","sourceRoot":"","sources":["../../../src/core/checklist/format-checklist-docx.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ export { applyChecklistPatch, setChecklistAppliedPatchStore, getChecklistApplied
|
|
|
5
5
|
export { humanStatus, STATUS_LABELS } from './status-labels.js';
|
|
6
6
|
export { createChecklist, listChecklists, resolveChecklist, getChecklistState, saveChecklistState, appendHistory, getHistory, ChecklistStateSchema, type ChecklistState, type ChecklistMeta, type ChecklistSummary, type HistoryRecord, } from './state-manager.js';
|
|
7
7
|
export { appendJsonl, readJsonl } from './jsonl-stores.js';
|
|
8
|
+
export { formatChecklistDocx } from './format-checklist-docx.js';
|
|
8
9
|
interface TemplateDocumentRow {
|
|
9
10
|
number: string;
|
|
10
11
|
title: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/checklist/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,gCAAgC,EAChC,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iCAAiC,EACjC,cAAc,EACd,6BAA6B,EAC7B,yBAAyB,EACzB,sBAAsB,EACtB,mCAAmC,EACnC,gCAAgC,EAChC,gCAAgC,EAChC,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACvC,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,GACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AA+
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/checklist/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,gCAAgC,EAChC,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iCAAiC,EACjC,cAAc,EACd,6BAA6B,EAC7B,yBAAyB,EACzB,sBAAsB,EACtB,mCAAmC,EACnC,gCAAgC,EAChC,gCAAgC,EAChC,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACvC,KAAK,+BAA+B,EACpC,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,GACpC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAC7B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EACL,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AA+BjE,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,YAAY,EAAE,iBAAiB,EAAE,CAAC;IAClC,WAAW,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAkLD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,OAAO,GAAG,wBAAwB,CAiGrF"}
|
|
@@ -7,6 +7,7 @@ export { applyChecklistPatch, setChecklistAppliedPatchStore, getChecklistApplied
|
|
|
7
7
|
export { humanStatus, STATUS_LABELS } from './status-labels.js';
|
|
8
8
|
export { createChecklist, listChecklists, resolveChecklist, getChecklistState, saveChecklistState, appendHistory, getHistory, ChecklistStateSchema, } from './state-manager.js';
|
|
9
9
|
export { appendJsonl, readJsonl } from './jsonl-stores.js';
|
|
10
|
+
export { formatChecklistDocx } from './format-checklist-docx.js';
|
|
10
11
|
const STAGE_ORDER = ['PRE_SIGNING', 'SIGNING', 'CLOSING', 'POST_CLOSING'];
|
|
11
12
|
const STAGE_HEADINGS = {
|
|
12
13
|
PRE_SIGNING: 'PRE-SIGNING',
|
|
@@ -216,29 +217,32 @@ export function buildChecklistTemplateContext(data) {
|
|
|
216
217
|
}
|
|
217
218
|
// Signatory sub-rows
|
|
218
219
|
for (const signatory of row.entry.signatories) {
|
|
220
|
+
const sigCheckbox = signatory.status === 'RECEIVED' ? '\u2611' : '\u2610';
|
|
219
221
|
documentRows.push({
|
|
220
222
|
number: '',
|
|
221
|
-
title: `${indent}\u00A0\
|
|
223
|
+
title: `${indent}\u00A0\u00A0${sigCheckbox} Signatory: ${signatoryLabel(signatory)}`,
|
|
222
224
|
status: '',
|
|
223
225
|
responsible_party: '',
|
|
224
226
|
});
|
|
225
227
|
}
|
|
226
228
|
// Linked action sub-rows
|
|
227
229
|
for (const action of row.linkedActions) {
|
|
230
|
+
const actCheckbox = action.status === 'COMPLETED' ? '\u2611' : '\u2610';
|
|
228
231
|
const latestCitation = latestCitationLabel(action.citations);
|
|
229
232
|
documentRows.push({
|
|
230
233
|
number: '',
|
|
231
|
-
title: `${indent}\u00A0\
|
|
234
|
+
title: `${indent}\u00A0\u00A0${actCheckbox} Action ${action.action_id}: ${action.description}`,
|
|
232
235
|
status: latestCitation ? `${humanStatus(action.status)} | ${latestCitation}` : humanStatus(action.status),
|
|
233
236
|
responsible_party: responsibilityLabel(action.assigned_to),
|
|
234
237
|
});
|
|
235
238
|
}
|
|
236
239
|
// Linked issue sub-rows
|
|
237
240
|
for (const issue of row.linkedIssues) {
|
|
241
|
+
const issCheckbox = issue.status === 'CLOSED' ? '\u2611' : '\u2610';
|
|
238
242
|
const latestCitation = latestCitationLabel(issue.citations);
|
|
239
243
|
documentRows.push({
|
|
240
244
|
number: '',
|
|
241
|
-
title: `${indent}\u00A0\
|
|
245
|
+
title: `${indent}\u00A0\u00A0${issCheckbox} Issue ${issue.issue_id}: ${issue.title}`,
|
|
242
246
|
status: latestCitation ? `${humanStatus(issue.status)} | ${latestCitation}` : humanStatus(issue.status),
|
|
243
247
|
responsible_party: '',
|
|
244
248
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/checklist/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/checklist/index.ts"],"names":[],"mappings":"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"}
|
package/dist/core/engine.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/core/engine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiC,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAMrF,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/core/engine.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiC,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAMrF,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AA4MD,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAqD5E"}
|
package/dist/core/engine.js
CHANGED
|
@@ -4,6 +4,39 @@ import { loadMetadata, loadCleanConfig } from './metadata.js';
|
|
|
4
4
|
import { loadSelectionsConfig } from './selector.js';
|
|
5
5
|
import { runFillPipeline } from './unified-pipeline.js';
|
|
6
6
|
import { BLANK_PLACEHOLDER, verifyTemplateFill } from './fill-utils.js';
|
|
7
|
+
/** Derive signatory display fields for a given prefix. Reusable across templates. */
|
|
8
|
+
function deriveSignatoryFields(data, prefix, fieldNames, str, isBlankPlaceholder) {
|
|
9
|
+
const typeKey = `${prefix}_type`;
|
|
10
|
+
if (!fieldNames.has(typeKey))
|
|
11
|
+
return;
|
|
12
|
+
const typeVal = str(typeKey);
|
|
13
|
+
const isEntity = typeVal !== 'individual';
|
|
14
|
+
data[`${prefix}_is_entity`] = isEntity;
|
|
15
|
+
// Derive display fields: show value for entities, empty string for individuals
|
|
16
|
+
for (const suffix of ['title', 'company']) {
|
|
17
|
+
const srcKey = `${prefix}_${suffix}`;
|
|
18
|
+
const displayKey = `${prefix}_${suffix}_display`;
|
|
19
|
+
if (isEntity) {
|
|
20
|
+
const val = data[srcKey];
|
|
21
|
+
data[displayKey] = (val && !isBlankPlaceholder(val)) ? String(val) : '';
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
data[displayKey] = '';
|
|
25
|
+
// Warn if entity-only fields are set for an individual
|
|
26
|
+
const val = data[srcKey];
|
|
27
|
+
if (val && !isBlankPlaceholder(val) && String(val).trim() !== '') {
|
|
28
|
+
console.warn(`Warning: ${srcKey} is set but ${prefix}_type is "individual" — value will be ignored`);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// Normalize signature fields: blank instead of BLANK_PLACEHOLDER underscores
|
|
33
|
+
for (const suffix of ['name', 'email', 'title', 'company']) {
|
|
34
|
+
const key = `${prefix}_${suffix}`;
|
|
35
|
+
if (isBlankPlaceholder(data[key])) {
|
|
36
|
+
data[key] = '';
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
7
40
|
/**
|
|
8
41
|
* Compute display fields for radio/checkbox groups in table rows.
|
|
9
42
|
* docx-templates only allows one {IF} per table row, so multi-option rows
|
|
@@ -16,6 +49,11 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
16
49
|
const str = (key) => String(data[key] ?? '');
|
|
17
50
|
const bool = (key) => data[key] === true;
|
|
18
51
|
const isBlankPlaceholder = (value) => typeof value === 'string' && value.trim() === BLANK_PLACEHOLDER;
|
|
52
|
+
/** True when a display field should be computed (not yet set or defaulted to blank). */
|
|
53
|
+
const needsCompute = (key) => {
|
|
54
|
+
const val = data[key];
|
|
55
|
+
return !val || isBlankPlaceholder(val);
|
|
56
|
+
};
|
|
19
57
|
const toGoogleDocUrl = (value) => {
|
|
20
58
|
const raw = value.trim();
|
|
21
59
|
if (raw === '')
|
|
@@ -28,6 +66,23 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
28
66
|
return `https://docs.google.com/document/d/${raw}/`;
|
|
29
67
|
return raw;
|
|
30
68
|
};
|
|
69
|
+
// ── Signatory type derivation ──
|
|
70
|
+
// Auto-discover role-based prefixes: match *_signatory_type
|
|
71
|
+
for (const key of fieldNames) {
|
|
72
|
+
if (key.endsWith('_signatory_type')) {
|
|
73
|
+
const prefix = key.slice(0, -5); // strip "_type" → e.g. "provider_signatory"
|
|
74
|
+
if (fieldNames.has(`${prefix}_name`) && fieldNames.has(`${prefix}_title`)) {
|
|
75
|
+
deriveSignatoryFields(data, prefix, fieldNames, str, isBlankPlaceholder);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// Legacy backward compat: party_1_type, party_2_type (mutual NDA)
|
|
80
|
+
for (const n of [1, 2]) {
|
|
81
|
+
const legacyKey = `party_${n}_type`;
|
|
82
|
+
if (fieldNames.has(legacyKey) && fieldNames.has(`party_${n}_name`) && fieldNames.has(`party_${n}_title`)) {
|
|
83
|
+
deriveSignatoryFields(data, `party_${n}`, fieldNames, str, isBlankPlaceholder);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
31
86
|
// Optional cover-table rows in employment templates should disappear when blank.
|
|
32
87
|
// The default blank placeholder is intentionally visible in most contexts,
|
|
33
88
|
// but for these optional rows we normalize blank placeholders to empty strings
|
|
@@ -47,19 +102,19 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
47
102
|
data['cloud_drive_id_footer'] = docUrl ? `Document URL: ${docUrl}` : '';
|
|
48
103
|
}
|
|
49
104
|
// Order Date: "Date of last signature" or custom date
|
|
50
|
-
if (fieldNames.has('order_date_display') &&
|
|
105
|
+
if (fieldNames.has('order_date_display') && needsCompute('order_date_display')) {
|
|
51
106
|
data['order_date_display'] = bool('order_date_is_last_signature')
|
|
52
107
|
? '( x )\tDate of last signature on this Order Form'
|
|
53
108
|
: `( x )\t${str('custom_order_date')}`;
|
|
54
109
|
}
|
|
55
110
|
// Pilot fee: paid or free trial
|
|
56
|
-
if (fieldNames.has('pilot_fee_display') &&
|
|
111
|
+
if (fieldNames.has('pilot_fee_display') && needsCompute('pilot_fee_display')) {
|
|
57
112
|
data['pilot_fee_display'] = bool('pilot_is_free')
|
|
58
113
|
? '( x )\tFree trial'
|
|
59
114
|
: `( x )\tFee for Pilot Period: ${str('pilot_fee')}`;
|
|
60
115
|
}
|
|
61
116
|
// Cloud Service Fees: build from selected checkboxes
|
|
62
|
-
if (fieldNames.has('fees_display') &&
|
|
117
|
+
if (fieldNames.has('fees_display') && needsCompute('fees_display')) {
|
|
63
118
|
const lines = [];
|
|
64
119
|
if (bool('fee_is_per_unit')) {
|
|
65
120
|
lines.push(`[ x ] ${str('fees')} per ${str('fee_unit')}`);
|
|
@@ -79,7 +134,7 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
79
134
|
data['fees_display'] = lines.join('\n');
|
|
80
135
|
}
|
|
81
136
|
// Payment Process: invoice or automatic
|
|
82
|
-
if (fieldNames.has('payment_display') &&
|
|
137
|
+
if (fieldNames.has('payment_display') && needsCompute('payment_display')) {
|
|
83
138
|
if (bool('payment_by_invoice')) {
|
|
84
139
|
const freq = str('payment_frequency');
|
|
85
140
|
const days = str('payment_terms_days');
|
|
@@ -97,7 +152,7 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
97
152
|
}
|
|
98
153
|
}
|
|
99
154
|
// Auto-renewal
|
|
100
|
-
if (fieldNames.has('auto_renewal_display') &&
|
|
155
|
+
if (fieldNames.has('auto_renewal_display') && needsCompute('auto_renewal_display')) {
|
|
101
156
|
if (bool('auto_renew')) {
|
|
102
157
|
const days = str('non_renewal_notice_days');
|
|
103
158
|
data['auto_renewal_display'] =
|
|
@@ -108,13 +163,13 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
108
163
|
}
|
|
109
164
|
}
|
|
110
165
|
// Effective Date
|
|
111
|
-
if (fieldNames.has('effective_date_display') &&
|
|
166
|
+
if (fieldNames.has('effective_date_display') && needsCompute('effective_date_display')) {
|
|
112
167
|
data['effective_date_display'] = bool('effective_date_is_last_signature')
|
|
113
168
|
? '( x )\tDate of last Cover Page signature'
|
|
114
169
|
: `( x )\t${str('custom_effective_date')}`;
|
|
115
170
|
}
|
|
116
171
|
// Covered Claims
|
|
117
|
-
if (fieldNames.has('covered_claims_display') &&
|
|
172
|
+
if (fieldNames.has('covered_claims_display') && needsCompute('covered_claims_display')) {
|
|
118
173
|
const lines = [];
|
|
119
174
|
if (bool('has_provider_covered_claims')) {
|
|
120
175
|
lines.push('[ x ] Provider Covered Claims: [Any action, proceeding, or claim that the Cloud Service, when used by Customer as permitted under the Agreement, infringes or misappropriates a third party\u2019s intellectual property rights.]');
|
|
@@ -125,7 +180,7 @@ function computeDisplayFields(data, fieldNames) {
|
|
|
125
180
|
data['covered_claims_display'] = lines.join('\n');
|
|
126
181
|
}
|
|
127
182
|
// General Cap Amount
|
|
128
|
-
if (fieldNames.has('general_cap_display') &&
|
|
183
|
+
if (fieldNames.has('general_cap_display') && needsCompute('general_cap_display')) {
|
|
129
184
|
if (bool('general_cap_is_multiplier')) {
|
|
130
185
|
data['general_cap_display'] = `( x )\t${str('general_cap_multiplier')}x the Fees paid or payable by Customer in the 12 month period immediately preceding the claim`;
|
|
131
186
|
}
|
|
@@ -146,13 +201,18 @@ export async function fillTemplate(options) {
|
|
|
146
201
|
if (unknownKeys.length > 0) {
|
|
147
202
|
console.warn(`Warning: unknown field(s) not in metadata: ${unknownKeys.join(', ')}`);
|
|
148
203
|
}
|
|
149
|
-
// Build cleanPatch if replacements.json exists
|
|
204
|
+
// Build cleanPatch if replacements.json or clean.json exists
|
|
150
205
|
const templatePath = join(templateDir, 'template.docx');
|
|
151
206
|
const replacementsPath = join(templateDir, 'replacements.json');
|
|
152
|
-
const
|
|
207
|
+
const cleanJsonPath = join(templateDir, 'clean.json');
|
|
208
|
+
const hasReplacements = existsSync(replacementsPath);
|
|
209
|
+
const hasCleanJson = existsSync(cleanJsonPath);
|
|
210
|
+
const cleanPatch = (hasReplacements || hasCleanJson)
|
|
153
211
|
? {
|
|
154
212
|
cleanConfig: loadCleanConfig(templateDir),
|
|
155
|
-
replacements:
|
|
213
|
+
replacements: hasReplacements
|
|
214
|
+
? JSON.parse(readFileSync(replacementsPath, 'utf-8'))
|
|
215
|
+
: {},
|
|
156
216
|
}
|
|
157
217
|
: undefined;
|
|
158
218
|
// Load selectionsConfig if selections.json exists
|
|
@@ -172,6 +232,7 @@ export async function fillTemplate(options) {
|
|
|
172
232
|
computeDisplayFields: (d) => computeDisplayFields(d, fieldNames),
|
|
173
233
|
fixSmartQuotes: true,
|
|
174
234
|
verify: (p) => verifyTemplateFill(p),
|
|
235
|
+
postProcess: options.postProcess,
|
|
175
236
|
});
|
|
176
237
|
return {
|
|
177
238
|
outputPath: result.outputPath,
|