@json-to-office/core-docx 4.3.0 → 4.4.1
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/core/layout.d.ts.map +1 -1
- package/dist/index.js +41 -25
- package/dist/index.js.map +1 -1
- package/dist/plugin/example/index.js +33 -17
- package/dist/plugin/example/index.js.map +1 -1
- package/dist/renderers/docxjs/index.d.ts.map +1 -1
- package/dist/templates/blueprints/client-report.docx.blueprint.json +8 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/core/layout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,mBAAmB,EACnB,cAAc,EAMf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAGxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAM/C,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE;QACJ,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf;;;eAGG;YACH,IAAI,CAAC,EAAE,MAAM,CAAC;SACf,CAAC;QACF,MAAM,EAAE;YACN,GAAG,EAAE,MAAM,CAAC;YACZ,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YAGb,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,MAAM,EAAE,cAAc,GAAG;QACvB;;;;;;WAMG;QACH,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACnD,CAAC;IACF,IAAI,CAAC,EAAE,YAAY,GAAG,YAAY,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;CAC1E;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,qBAAqB,CAAC;IAClC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,UAAU,EAAE,QAAQ,GAAG,cAAc,CAAC;IACtC,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,CAAC;IAClD,MAAM,CAAC,EAAE,mBAAmB,EAAE,GAAG,gBAAgB,CAAC;IAClD,8EAA8E;IAC9E,aAAa,EAAE,OAAO,CAAC;IACvB,+FAA+F;IAC/F,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mDAAmD;IACnD,YAAY,CAAC,EAAE;QACb,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5E,OAAO,CAAC,EAAE;YACR,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,QAAQ,GAAG,cAAc,CAAC;IAClC,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,GAChB,UAAU,CA8FZ;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,mBAAmB,EAAE,GAChC,WAAW,EAAE,CA0Ef;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,mBAAmB,GAC7B,QAAQ,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/core/layout.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3293,6 +3293,7 @@ import {
|
|
|
3293
3293
|
Header,
|
|
3294
3294
|
ImageRun,
|
|
3295
3295
|
Packer,
|
|
3296
|
+
LineRuleType as LineRuleType2,
|
|
3296
3297
|
Paragraph as Paragraph2
|
|
3297
3298
|
} from "docx";
|
|
3298
3299
|
function createDocxJsRenderer() {
|
|
@@ -3546,21 +3547,33 @@ function sectionChildren(section2, resources) {
|
|
|
3546
3547
|
const blocks = section2.children.map((block2) => emitBlock(block2, resources));
|
|
3547
3548
|
const bookmark = section2.bookmark;
|
|
3548
3549
|
if (!bookmark) return blocks;
|
|
3549
|
-
const out = [];
|
|
3550
|
+
const out = [...blocks];
|
|
3550
3551
|
if (bookmark.opens) {
|
|
3551
|
-
|
|
3552
|
-
|
|
3553
|
-
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
|
|
3552
|
+
const start = new BookmarkStart2(bookmark.name, bookmark.id);
|
|
3553
|
+
const first = out[0];
|
|
3554
|
+
if (first instanceof Paragraph2) {
|
|
3555
|
+
first.addRunToFront(start);
|
|
3556
|
+
} else {
|
|
3557
|
+
out.unshift(anchorParagraph(start));
|
|
3558
|
+
}
|
|
3557
3559
|
}
|
|
3558
|
-
out.push(...blocks);
|
|
3559
3560
|
if (bookmark.closes) {
|
|
3560
|
-
|
|
3561
|
+
const end = new BookmarkEnd2(bookmark.id);
|
|
3562
|
+
const last = out[out.length - 1];
|
|
3563
|
+
if (last instanceof Paragraph2) {
|
|
3564
|
+
last.addChildElement(end);
|
|
3565
|
+
} else {
|
|
3566
|
+
out.push(anchorParagraph(end));
|
|
3567
|
+
}
|
|
3561
3568
|
}
|
|
3562
3569
|
return out;
|
|
3563
3570
|
}
|
|
3571
|
+
function anchorParagraph(anchor) {
|
|
3572
|
+
return new Paragraph2({
|
|
3573
|
+
children: [anchor],
|
|
3574
|
+
spacing: { before: 0, after: 0, line: 20, lineRule: LineRuleType2.EXACT }
|
|
3575
|
+
});
|
|
3576
|
+
}
|
|
3564
3577
|
function coreProperties(ir) {
|
|
3565
3578
|
const { metadata } = ir;
|
|
3566
3579
|
return {
|
|
@@ -9059,6 +9072,15 @@ function compileColumns(component, scope) {
|
|
|
9059
9072
|
if (configs.length === 0) return [];
|
|
9060
9073
|
const available = getAvailableWidthTwips(ctx.theme, ctx.themeName);
|
|
9061
9074
|
const { widths, gaps } = columnMetrics(configs, props.gap, available);
|
|
9075
|
+
const stated = widths.map(
|
|
9076
|
+
(width, index) => width + gaps[index] / 2 + (index > 0 ? gaps[index - 1] / 2 : 0)
|
|
9077
|
+
);
|
|
9078
|
+
const statedTotal = stated.reduce((sum, cell) => sum + cell, 0);
|
|
9079
|
+
const scale = statedTotal > available ? available / statedTotal : 1;
|
|
9080
|
+
const exact = stated.map((cell) => cell * scale);
|
|
9081
|
+
const cells = exact.map((cell) => Math.round(cell));
|
|
9082
|
+
const total = exact.reduce((sum, cell) => sum + cell, 0);
|
|
9083
|
+
cells[cells.length - 1] += Math.round(total) - cells.reduce((a, b) => a + b, 0);
|
|
9062
9084
|
const contents = configs.map(() => []);
|
|
9063
9085
|
const children = component.children ?? [];
|
|
9064
9086
|
children.forEach((child, index) => {
|
|
@@ -9070,7 +9092,7 @@ function compileColumns(component, scope) {
|
|
|
9070
9092
|
kind: "table",
|
|
9071
9093
|
id: scope.id,
|
|
9072
9094
|
path: path4,
|
|
9073
|
-
columnGrid: { unit: "twips", values:
|
|
9095
|
+
columnGrid: { unit: "twips", values: cells },
|
|
9074
9096
|
width: { kind: "percent", value: 100 },
|
|
9075
9097
|
layout: "fixed",
|
|
9076
9098
|
borders: NO_BORDERS,
|
|
@@ -9095,7 +9117,7 @@ function compileColumns(component, scope) {
|
|
|
9095
9117
|
children: []
|
|
9096
9118
|
}
|
|
9097
9119
|
],
|
|
9098
|
-
widthTwips:
|
|
9120
|
+
widthTwips: cells[index],
|
|
9099
9121
|
margins: {
|
|
9100
9122
|
topTwips: 0,
|
|
9101
9123
|
rightTwips: gaps[index] / 2,
|
|
@@ -11432,12 +11454,6 @@ function determineComponentLayout(component) {
|
|
|
11432
11454
|
}
|
|
11433
11455
|
return "single";
|
|
11434
11456
|
}
|
|
11435
|
-
if ("children" in component && component.children) {
|
|
11436
|
-
const hasColumns = component.children.some(
|
|
11437
|
-
(child) => isColumnsComponent(child)
|
|
11438
|
-
);
|
|
11439
|
-
return hasColumns ? "multi-column" : "single";
|
|
11440
|
-
}
|
|
11441
11457
|
return "single";
|
|
11442
11458
|
}
|
|
11443
11459
|
function processLayoutComponents(components) {
|
|
@@ -15117,7 +15133,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15117
15133
|
slots: {
|
|
15118
15134
|
number: "01",
|
|
15119
15135
|
title: "{{Section title: the finding, as a statement}}",
|
|
15120
|
-
tracker: "{{Tracker: one
|
|
15136
|
+
tracker: "{{Tracker: one word}}"
|
|
15121
15137
|
}
|
|
15122
15138
|
}
|
|
15123
15139
|
},
|
|
@@ -15175,7 +15191,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15175
15191
|
slots: {
|
|
15176
15192
|
number: "02",
|
|
15177
15193
|
title: "{{Section title: the finding, as a statement}}",
|
|
15178
|
-
tracker: "{{Tracker: one
|
|
15194
|
+
tracker: "{{Tracker: one word}}"
|
|
15179
15195
|
}
|
|
15180
15196
|
}
|
|
15181
15197
|
},
|
|
@@ -15248,7 +15264,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15248
15264
|
slots: {
|
|
15249
15265
|
number: "03",
|
|
15250
15266
|
title: "{{Section title: the finding, as a statement}}",
|
|
15251
|
-
tracker: "{{Tracker: one
|
|
15267
|
+
tracker: "{{Tracker: one word}}"
|
|
15252
15268
|
}
|
|
15253
15269
|
}
|
|
15254
15270
|
},
|
|
@@ -15302,7 +15318,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15302
15318
|
slots: {
|
|
15303
15319
|
number: "04",
|
|
15304
15320
|
title: "{{Section title: the finding, as a statement}}",
|
|
15305
|
-
tracker: "{{Tracker: one
|
|
15321
|
+
tracker: "{{Tracker: one word}}"
|
|
15306
15322
|
}
|
|
15307
15323
|
}
|
|
15308
15324
|
},
|
|
@@ -15374,7 +15390,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15374
15390
|
slots: {
|
|
15375
15391
|
number: "01",
|
|
15376
15392
|
title: "{{Section title: the finding, as a statement}}",
|
|
15377
|
-
tracker: "{{Tracker: one
|
|
15393
|
+
tracker: "{{Tracker: one word}}"
|
|
15378
15394
|
}
|
|
15379
15395
|
}
|
|
15380
15396
|
},
|
|
@@ -15415,7 +15431,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15415
15431
|
slots: {
|
|
15416
15432
|
number: "02",
|
|
15417
15433
|
title: "{{Section title: the finding, as a statement}}",
|
|
15418
|
-
tracker: "{{Tracker: one
|
|
15434
|
+
tracker: "{{Tracker: one word}}"
|
|
15419
15435
|
}
|
|
15420
15436
|
}
|
|
15421
15437
|
},
|
|
@@ -15453,7 +15469,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15453
15469
|
slots: {
|
|
15454
15470
|
number: "03",
|
|
15455
15471
|
title: "{{Section title: the finding, as a statement}}",
|
|
15456
|
-
tracker: "{{Tracker: one
|
|
15472
|
+
tracker: "{{Tracker: one word}}"
|
|
15457
15473
|
}
|
|
15458
15474
|
}
|
|
15459
15475
|
},
|
|
@@ -15504,7 +15520,7 @@ var client_report_docx_blueprint_default = {
|
|
|
15504
15520
|
slots: {
|
|
15505
15521
|
number: "04",
|
|
15506
15522
|
title: "{{Section title: the finding, as a statement}}",
|
|
15507
|
-
tracker: "{{Tracker: one
|
|
15523
|
+
tracker: "{{Tracker: one word}}"
|
|
15508
15524
|
}
|
|
15509
15525
|
}
|
|
15510
15526
|
},
|