docxmlater 10.1.3 → 10.1.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/README.md +759 -754
- package/dist/constants/legacyCompatFlags.js +1 -1
- package/dist/constants/legacyCompatFlags.js.map +1 -1
- package/dist/constants/limits.js.map +1 -1
- package/dist/core/Document.d.ts +50 -50
- package/dist/core/Document.d.ts.map +1 -1
- package/dist/core/Document.js +483 -471
- package/dist/core/Document.js.map +1 -1
- package/dist/core/DocumentContent.d.ts +9 -9
- package/dist/core/DocumentContent.d.ts.map +1 -1
- package/dist/core/DocumentContent.js +1 -1
- package/dist/core/DocumentContent.js.map +1 -1
- package/dist/core/DocumentGenerator.d.ts +11 -11
- package/dist/core/DocumentGenerator.d.ts.map +1 -1
- package/dist/core/DocumentGenerator.js +251 -251
- package/dist/core/DocumentGenerator.js.map +1 -1
- package/dist/core/DocumentIdManager.js.map +1 -1
- package/dist/core/DocumentParser.d.ts +15 -15
- package/dist/core/DocumentParser.d.ts.map +1 -1
- package/dist/core/DocumentParser.js +2123 -2155
- package/dist/core/DocumentParser.js.map +1 -1
- package/dist/core/DocumentValidator.d.ts.map +1 -1
- package/dist/core/DocumentValidator.js +2 -5
- package/dist/core/DocumentValidator.js.map +1 -1
- package/dist/core/Relationship.js.map +1 -1
- package/dist/core/RelationshipManager.d.ts.map +1 -1
- package/dist/core/RelationshipManager.js +3 -3
- package/dist/core/RelationshipManager.js.map +1 -1
- package/dist/elements/AlternateContent.js.map +1 -1
- package/dist/elements/Bookmark.d.ts.map +1 -1
- package/dist/elements/Bookmark.js +3 -1
- package/dist/elements/Bookmark.js.map +1 -1
- package/dist/elements/BookmarkManager.d.ts.map +1 -1
- package/dist/elements/BookmarkManager.js.map +1 -1
- package/dist/elements/Comment.d.ts.map +1 -1
- package/dist/elements/Comment.js +9 -6
- package/dist/elements/Comment.js.map +1 -1
- package/dist/elements/CommentManager.d.ts.map +1 -1
- package/dist/elements/CommentManager.js +18 -17
- package/dist/elements/CommentManager.js.map +1 -1
- package/dist/elements/CommonTypes.d.ts +21 -21
- package/dist/elements/CommonTypes.d.ts.map +1 -1
- package/dist/elements/CommonTypes.js +56 -56
- package/dist/elements/CommonTypes.js.map +1 -1
- package/dist/elements/CustomXml.js.map +1 -1
- package/dist/elements/Endnote.d.ts.map +1 -1
- package/dist/elements/Endnote.js +6 -6
- package/dist/elements/Endnote.js.map +1 -1
- package/dist/elements/EndnoteManager.d.ts.map +1 -1
- package/dist/elements/EndnoteManager.js +6 -7
- package/dist/elements/EndnoteManager.js.map +1 -1
- package/dist/elements/Field.d.ts.map +1 -1
- package/dist/elements/Field.js +82 -25
- package/dist/elements/Field.js.map +1 -1
- package/dist/elements/FieldHelpers.d.ts.map +1 -1
- package/dist/elements/FieldHelpers.js.map +1 -1
- package/dist/elements/FontManager.d.ts.map +1 -1
- package/dist/elements/FontManager.js +1 -1
- package/dist/elements/FontManager.js.map +1 -1
- package/dist/elements/Footer.js +2 -2
- package/dist/elements/Footer.js.map +1 -1
- package/dist/elements/Footnote.d.ts.map +1 -1
- package/dist/elements/Footnote.js +6 -6
- package/dist/elements/Footnote.js.map +1 -1
- package/dist/elements/FootnoteManager.d.ts.map +1 -1
- package/dist/elements/FootnoteManager.js +6 -7
- package/dist/elements/FootnoteManager.js.map +1 -1
- package/dist/elements/Header.js +2 -2
- package/dist/elements/Header.js.map +1 -1
- package/dist/elements/HeaderFooterManager.js.map +1 -1
- package/dist/elements/Hyperlink.d.ts +5 -3
- package/dist/elements/Hyperlink.d.ts.map +1 -1
- package/dist/elements/Hyperlink.js +134 -76
- package/dist/elements/Hyperlink.js.map +1 -1
- package/dist/elements/Image.d.ts.map +1 -1
- package/dist/elements/Image.js +238 -106
- package/dist/elements/Image.js.map +1 -1
- package/dist/elements/ImageManager.d.ts.map +1 -1
- package/dist/elements/ImageManager.js +1 -1
- package/dist/elements/ImageManager.js.map +1 -1
- package/dist/elements/ImageRun.js +1 -1
- package/dist/elements/ImageRun.js.map +1 -1
- package/dist/elements/MathElement.js.map +1 -1
- package/dist/elements/Paragraph.d.ts +24 -24
- package/dist/elements/Paragraph.d.ts.map +1 -1
- package/dist/elements/Paragraph.js +181 -188
- package/dist/elements/Paragraph.js.map +1 -1
- package/dist/elements/PreservedElement.js.map +1 -1
- package/dist/elements/PropertyChangeTypes.d.ts.map +1 -1
- package/dist/elements/PropertyChangeTypes.js +6 -6
- package/dist/elements/PropertyChangeTypes.js.map +1 -1
- package/dist/elements/RangeMarker.d.ts.map +1 -1
- package/dist/elements/RangeMarker.js.map +1 -1
- package/dist/elements/Revision.d.ts.map +1 -1
- package/dist/elements/Revision.js +4 -5
- package/dist/elements/Revision.js.map +1 -1
- package/dist/elements/RevisionContent.js.map +1 -1
- package/dist/elements/RevisionManager.d.ts.map +1 -1
- package/dist/elements/RevisionManager.js +40 -48
- package/dist/elements/RevisionManager.js.map +1 -1
- package/dist/elements/Run.d.ts +16 -16
- package/dist/elements/Run.d.ts.map +1 -1
- package/dist/elements/Run.js +256 -238
- package/dist/elements/Run.js.map +1 -1
- package/dist/elements/Section.d.ts.map +1 -1
- package/dist/elements/Section.js +36 -11
- package/dist/elements/Section.js.map +1 -1
- package/dist/elements/Shape.d.ts.map +1 -1
- package/dist/elements/Shape.js.map +1 -1
- package/dist/elements/StructuredDocumentTag.d.ts +6 -6
- package/dist/elements/StructuredDocumentTag.d.ts.map +1 -1
- package/dist/elements/StructuredDocumentTag.js +99 -104
- package/dist/elements/StructuredDocumentTag.js.map +1 -1
- package/dist/elements/Table.d.ts +11 -11
- package/dist/elements/Table.d.ts.map +1 -1
- package/dist/elements/Table.js +102 -107
- package/dist/elements/Table.js.map +1 -1
- package/dist/elements/TableCell.d.ts +10 -10
- package/dist/elements/TableCell.d.ts.map +1 -1
- package/dist/elements/TableCell.js +105 -106
- package/dist/elements/TableCell.js.map +1 -1
- package/dist/elements/TableGridChange.d.ts.map +1 -1
- package/dist/elements/TableGridChange.js.map +1 -1
- package/dist/elements/TableOfContents.d.ts.map +1 -1
- package/dist/elements/TableOfContents.js +4 -4
- package/dist/elements/TableOfContents.js.map +1 -1
- package/dist/elements/TableOfContentsElement.js.map +1 -1
- package/dist/elements/TableRow.d.ts.map +1 -1
- package/dist/elements/TableRow.js +13 -6
- package/dist/elements/TableRow.js.map +1 -1
- package/dist/elements/TextBox.d.ts.map +1 -1
- package/dist/elements/TextBox.js +3 -5
- package/dist/elements/TextBox.js.map +1 -1
- package/dist/formatting/AbstractNumbering.d.ts +4 -4
- package/dist/formatting/AbstractNumbering.d.ts.map +1 -1
- package/dist/formatting/AbstractNumbering.js +54 -49
- package/dist/formatting/AbstractNumbering.js.map +1 -1
- package/dist/formatting/NumberingInstance.d.ts.map +1 -1
- package/dist/formatting/NumberingInstance.js +1 -3
- package/dist/formatting/NumberingInstance.js.map +1 -1
- package/dist/formatting/NumberingLevel.d.ts +5 -5
- package/dist/formatting/NumberingLevel.d.ts.map +1 -1
- package/dist/formatting/NumberingLevel.js +119 -125
- package/dist/formatting/NumberingLevel.js.map +1 -1
- package/dist/formatting/NumberingManager.d.ts.map +1 -1
- package/dist/formatting/NumberingManager.js +9 -9
- package/dist/formatting/NumberingManager.js.map +1 -1
- package/dist/formatting/Style.d.ts +11 -11
- package/dist/formatting/Style.d.ts.map +1 -1
- package/dist/formatting/Style.js +219 -247
- package/dist/formatting/Style.js.map +1 -1
- package/dist/formatting/StylesManager.d.ts +2 -2
- package/dist/formatting/StylesManager.d.ts.map +1 -1
- package/dist/formatting/StylesManager.js +96 -102
- package/dist/formatting/StylesManager.js.map +1 -1
- package/dist/helpers/CleanupHelper.d.ts +1 -1
- package/dist/helpers/CleanupHelper.d.ts.map +1 -1
- package/dist/helpers/CleanupHelper.js +6 -6
- package/dist/helpers/CleanupHelper.js.map +1 -1
- package/dist/images/ImageOptimizer.js +7 -7
- package/dist/images/ImageOptimizer.js.map +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/managers/DrawingManager.js.map +1 -1
- package/dist/tracking/DocumentTrackingContext.d.ts.map +1 -1
- package/dist/tracking/DocumentTrackingContext.js +23 -7
- package/dist/tracking/DocumentTrackingContext.js.map +1 -1
- package/dist/tracking/TrackingContext.d.ts.map +1 -1
- package/dist/tracking/TrackingContext.js.map +1 -1
- package/dist/types/compatibility-types.js.map +1 -1
- package/dist/types/formatting.js.map +1 -1
- package/dist/types/list-types.d.ts +6 -6
- package/dist/types/list-types.js.map +1 -1
- package/dist/types/settings-types.js.map +1 -1
- package/dist/types/styleConfig.d.ts +2 -2
- package/dist/types/styleConfig.js.map +1 -1
- package/dist/utils/ChangelogGenerator.d.ts.map +1 -1
- package/dist/utils/ChangelogGenerator.js +97 -101
- package/dist/utils/ChangelogGenerator.js.map +1 -1
- package/dist/utils/CompatibilityUpgrader.d.ts.map +1 -1
- package/dist/utils/CompatibilityUpgrader.js +1 -1
- package/dist/utils/CompatibilityUpgrader.js.map +1 -1
- package/dist/utils/InMemoryRevisionAcceptor.d.ts.map +1 -1
- package/dist/utils/InMemoryRevisionAcceptor.js +1 -6
- package/dist/utils/InMemoryRevisionAcceptor.js.map +1 -1
- package/dist/utils/MoveOperationHelper.d.ts.map +1 -1
- package/dist/utils/MoveOperationHelper.js +1 -1
- package/dist/utils/MoveOperationHelper.js.map +1 -1
- package/dist/utils/RevisionAwareProcessor.d.ts.map +1 -1
- package/dist/utils/RevisionAwareProcessor.js +2 -4
- package/dist/utils/RevisionAwareProcessor.js.map +1 -1
- package/dist/utils/RevisionWalker.d.ts.map +1 -1
- package/dist/utils/RevisionWalker.js +4 -12
- package/dist/utils/RevisionWalker.js.map +1 -1
- package/dist/utils/SelectiveRevisionAcceptor.d.ts.map +1 -1
- package/dist/utils/SelectiveRevisionAcceptor.js +2 -6
- package/dist/utils/SelectiveRevisionAcceptor.js.map +1 -1
- package/dist/utils/ShadingResolver.d.ts.map +1 -1
- package/dist/utils/ShadingResolver.js +1 -1
- package/dist/utils/ShadingResolver.js.map +1 -1
- package/dist/utils/acceptRevisions.d.ts.map +1 -1
- package/dist/utils/acceptRevisions.js +23 -12
- package/dist/utils/acceptRevisions.js.map +1 -1
- package/dist/utils/cnfStyleDecoder.d.ts +1 -1
- package/dist/utils/cnfStyleDecoder.d.ts.map +1 -1
- package/dist/utils/cnfStyleDecoder.js +40 -40
- package/dist/utils/cnfStyleDecoder.js.map +1 -1
- package/dist/utils/corruptionDetection.d.ts.map +1 -1
- package/dist/utils/corruptionDetection.js.map +1 -1
- package/dist/utils/dateFormatting.js.map +1 -1
- package/dist/utils/deepClone.js +1 -1
- package/dist/utils/deepClone.js.map +1 -1
- package/dist/utils/diagnostics.d.ts.map +1 -1
- package/dist/utils/diagnostics.js +1 -1
- package/dist/utils/diagnostics.js.map +1 -1
- package/dist/utils/errorHandling.js.map +1 -1
- package/dist/utils/formatting.d.ts.map +1 -1
- package/dist/utils/formatting.js +10 -2
- package/dist/utils/formatting.js.map +1 -1
- package/dist/utils/list-detection.d.ts +2 -2
- package/dist/utils/list-detection.d.ts.map +1 -1
- package/dist/utils/list-detection.js +21 -23
- package/dist/utils/list-detection.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +12 -7
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/parsingHelpers.js.map +1 -1
- package/dist/utils/stripTrackedChanges.d.ts.map +1 -1
- package/dist/utils/stripTrackedChanges.js +3 -3
- package/dist/utils/stripTrackedChanges.js.map +1 -1
- package/dist/utils/textDiff.d.ts +1 -1
- package/dist/utils/textDiff.js +8 -8
- package/dist/utils/textDiff.js.map +1 -1
- package/dist/utils/units.js.map +1 -1
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +24 -7
- package/dist/utils/validation.js.map +1 -1
- package/dist/utils/xmlSanitization.d.ts.map +1 -1
- package/dist/utils/xmlSanitization.js +3 -3
- package/dist/utils/xmlSanitization.js.map +1 -1
- package/dist/validation/RevisionAutoFixer.d.ts.map +1 -1
- package/dist/validation/RevisionAutoFixer.js +5 -5
- package/dist/validation/RevisionAutoFixer.js.map +1 -1
- package/dist/validation/RevisionValidator.d.ts.map +1 -1
- package/dist/validation/RevisionValidator.js +7 -9
- package/dist/validation/RevisionValidator.js.map +1 -1
- package/dist/validation/ValidationRules.js +3 -3
- package/dist/validation/ValidationRules.js.map +1 -1
- package/dist/validation/index.js.map +1 -1
- package/dist/xml/XMLBuilder.d.ts +1 -1
- package/dist/xml/XMLBuilder.d.ts.map +1 -1
- package/dist/xml/XMLBuilder.js +98 -100
- package/dist/xml/XMLBuilder.js.map +1 -1
- package/dist/xml/XMLParser.d.ts.map +1 -1
- package/dist/xml/XMLParser.js +61 -66
- package/dist/xml/XMLParser.js.map +1 -1
- package/dist/zip/ZipHandler.d.ts.map +1 -1
- package/dist/zip/ZipHandler.js.map +1 -1
- package/dist/zip/ZipReader.d.ts.map +1 -1
- package/dist/zip/ZipReader.js +1 -3
- package/dist/zip/ZipReader.js.map +1 -1
- package/dist/zip/ZipWriter.d.ts +1 -1
- package/dist/zip/ZipWriter.d.ts.map +1 -1
- package/dist/zip/ZipWriter.js +28 -36
- package/dist/zip/ZipWriter.js.map +1 -1
- package/dist/zip/types.js +1 -1
- package/dist/zip/types.js.map +1 -1
- package/package.json +92 -92
- package/src/__tests__/helper-methods.test.ts +512 -512
- package/src/constants/legacyCompatFlags.ts +138 -138
- package/src/constants/limits.ts +50 -50
- package/src/core/Document.ts +985 -1145
- package/src/core/DocumentContent.ts +461 -467
- package/src/core/DocumentGenerator.ts +1133 -1104
- package/src/core/DocumentIdManager.ts +158 -158
- package/src/core/DocumentParser.ts +2347 -2716
- package/src/core/DocumentValidator.ts +363 -372
- package/src/core/Relationship.ts +367 -367
- package/src/core/RelationshipManager.ts +429 -428
- package/src/elements/AlternateContent.ts +42 -42
- package/src/elements/Bookmark.ts +212 -210
- package/src/elements/BookmarkManager.ts +247 -250
- package/src/elements/Comment.ts +356 -359
- package/src/elements/CommentManager.ts +499 -502
- package/src/elements/CommonTypes.ts +524 -549
- package/src/elements/CustomXml.ts +36 -36
- package/src/elements/Endnote.ts +221 -217
- package/src/elements/EndnoteManager.ts +246 -249
- package/src/elements/Field.ts +1292 -1233
- package/src/elements/FieldHelpers.ts +329 -333
- package/src/elements/FontManager.ts +336 -339
- package/src/elements/Footer.ts +269 -269
- package/src/elements/Footnote.ts +221 -217
- package/src/elements/FootnoteManager.ts +246 -249
- package/src/elements/Header.ts +269 -269
- package/src/elements/HeaderFooterManager.ts +219 -219
- package/src/elements/Hyperlink.ts +1288 -1193
- package/src/elements/Image.ts +1982 -1756
- package/src/elements/ImageManager.ts +437 -432
- package/src/elements/ImageRun.ts +59 -59
- package/src/elements/MathElement.ts +65 -65
- package/src/elements/Paragraph.ts +4347 -4287
- package/src/elements/PreservedElement.ts +53 -53
- package/src/elements/PropertyChangeTypes.ts +458 -442
- package/src/elements/RangeMarker.ts +382 -400
- package/src/elements/Revision.ts +1198 -1217
- package/src/elements/RevisionContent.ts +73 -73
- package/src/elements/RevisionManager.ts +1070 -1070
- package/src/elements/Run.ts +3103 -3073
- package/src/elements/Section.ts +1521 -1421
- package/src/elements/Shape.ts +884 -873
- package/src/elements/StructuredDocumentTag.ts +1176 -1207
- package/src/elements/Table.ts +2468 -2524
- package/src/elements/TableCell.ts +1617 -1621
- package/src/elements/TableGridChange.ts +149 -151
- package/src/elements/TableOfContents.ts +701 -691
- package/src/elements/TableOfContentsElement.ts +89 -89
- package/src/elements/TableRow.ts +960 -929
- package/src/elements/TextBox.ts +766 -768
- package/src/formatting/AbstractNumbering.ts +580 -579
- package/src/formatting/NumberingInstance.ts +295 -299
- package/src/formatting/NumberingLevel.ts +981 -1040
- package/src/formatting/NumberingManager.ts +833 -827
- package/src/formatting/Style.ts +1785 -1879
- package/src/formatting/StylesManager.ts +1090 -1130
- package/src/helpers/CleanupHelper.ts +524 -524
- package/src/images/ImageOptimizer.ts +274 -274
- package/src/index.ts +559 -554
- package/src/managers/DrawingManager.ts +319 -319
- package/src/tracking/DocumentTrackingContext.ts +687 -674
- package/src/tracking/TrackingContext.ts +175 -173
- package/src/types/compatibility-types.ts +49 -49
- package/src/types/formatting.ts +210 -210
- package/src/types/list-types.ts +14 -14
- package/src/types/settings-types.ts +59 -59
- package/src/types/styleConfig.ts +189 -189
- package/src/utils/ChangelogGenerator.ts +1583 -1581
- package/src/utils/CompatibilityUpgrader.ts +235 -237
- package/src/utils/InMemoryRevisionAcceptor.ts +691 -696
- package/src/utils/MoveOperationHelper.ts +233 -238
- package/src/utils/RevisionAwareProcessor.ts +518 -526
- package/src/utils/RevisionWalker.ts +427 -457
- package/src/utils/SelectiveRevisionAcceptor.ts +662 -683
- package/src/utils/ShadingResolver.ts +105 -107
- package/src/utils/acceptRevisions.ts +723 -714
- package/src/utils/cnfStyleDecoder.ts +212 -217
- package/src/utils/corruptionDetection.ts +346 -345
- package/src/utils/dateFormatting.ts +20 -20
- package/src/utils/deepClone.ts +77 -78
- package/src/utils/diagnostics.ts +125 -129
- package/src/utils/errorHandling.ts +80 -80
- package/src/utils/formatting.ts +220 -213
- package/src/utils/list-detection.ts +32 -42
- package/src/utils/logger.ts +412 -404
- package/src/utils/parsingHelpers.ts +190 -190
- package/src/utils/stripTrackedChanges.ts +356 -353
- package/src/utils/textDiff.ts +100 -100
- package/src/utils/units.ts +421 -421
- package/src/utils/validation.ts +553 -542
- package/src/utils/xmlSanitization.ts +179 -182
- package/src/validation/RevisionAutoFixer.ts +541 -542
- package/src/validation/RevisionValidator.ts +470 -460
- package/src/validation/ValidationRules.ts +338 -338
- package/src/validation/index.ts +30 -30
- package/src/xml/XMLBuilder.ts +857 -871
- package/src/xml/XMLParser.ts +877 -919
- package/src/zip/ZipHandler.ts +629 -637
- package/src/zip/ZipReader.ts +295 -299
- package/src/zip/ZipWriter.ts +374 -390
- package/src/zip/types.ts +116 -116
|
@@ -93,7 +93,7 @@ class Paragraph {
|
|
|
93
93
|
return this._stylesManager;
|
|
94
94
|
}
|
|
95
95
|
static create(textOrFormatting, formatting) {
|
|
96
|
-
if (typeof textOrFormatting ===
|
|
96
|
+
if (typeof textOrFormatting === 'string') {
|
|
97
97
|
const paragraph = new Paragraph(formatting);
|
|
98
98
|
paragraph.addText(textOrFormatting);
|
|
99
99
|
return paragraph;
|
|
@@ -220,7 +220,7 @@ class Paragraph {
|
|
|
220
220
|
return [...this.bookmarksEnd];
|
|
221
221
|
}
|
|
222
222
|
removeBookmarkEnd(id) {
|
|
223
|
-
const index = this.bookmarksEnd.findIndex(bm => bm.getId() === id);
|
|
223
|
+
const index = this.bookmarksEnd.findIndex((bm) => bm.getId() === id);
|
|
224
224
|
if (index !== -1) {
|
|
225
225
|
this.bookmarksEnd.splice(index, 1);
|
|
226
226
|
return true;
|
|
@@ -384,13 +384,13 @@ class Paragraph {
|
|
|
384
384
|
return this.content
|
|
385
385
|
.filter((item) => item instanceof Run_1.Run || item instanceof Hyperlink_1.Hyperlink)
|
|
386
386
|
.map((item) => item.getText())
|
|
387
|
-
.join(
|
|
387
|
+
.join('');
|
|
388
388
|
}
|
|
389
389
|
getFields() {
|
|
390
390
|
return this.content.filter((item) => item instanceof Field_1.Field || item instanceof Field_1.ComplexField);
|
|
391
391
|
}
|
|
392
392
|
findFieldsByInstruction(pattern) {
|
|
393
|
-
const regex = typeof pattern ===
|
|
393
|
+
const regex = typeof pattern === 'string' ? new RegExp(pattern, 'i') : pattern;
|
|
394
394
|
return this.getFields().filter((field) => {
|
|
395
395
|
const instruction = field.getInstruction();
|
|
396
396
|
return regex.test(instruction);
|
|
@@ -405,7 +405,7 @@ class Paragraph {
|
|
|
405
405
|
const index = this.content.indexOf(oldField);
|
|
406
406
|
if (index === -1)
|
|
407
407
|
return false;
|
|
408
|
-
if (typeof replacement ===
|
|
408
|
+
if (typeof replacement === 'string') {
|
|
409
409
|
this.content[index] = new Run_1.Run(replacement);
|
|
410
410
|
}
|
|
411
411
|
else {
|
|
@@ -462,8 +462,7 @@ class Paragraph {
|
|
|
462
462
|
return this.formatting.contextualSpacing ?? false;
|
|
463
463
|
}
|
|
464
464
|
hasNumbering() {
|
|
465
|
-
return this.formatting.numbering?.numId !== undefined &&
|
|
466
|
-
this.formatting.numbering.numId !== 0;
|
|
465
|
+
return this.formatting.numbering?.numId !== undefined && this.formatting.numbering.numId !== 0;
|
|
467
466
|
}
|
|
468
467
|
isNumberingSuppressed() {
|
|
469
468
|
return this.formatting.numberingSuppressed === true;
|
|
@@ -607,8 +606,8 @@ class Paragraph {
|
|
|
607
606
|
}
|
|
608
607
|
setLeftIndent(twips) {
|
|
609
608
|
if (this.formatting.numbering) {
|
|
610
|
-
logger_1.defaultLogger.warn(
|
|
611
|
-
|
|
609
|
+
logger_1.defaultLogger.warn('Setting left indentation on a numbered paragraph has no effect. ' +
|
|
610
|
+
'Numbering controls indentation. Use different numbering levels to change indent.');
|
|
612
611
|
}
|
|
613
612
|
const previousValue = this.formatting.indentation?.left;
|
|
614
613
|
if (!this.formatting.indentation) {
|
|
@@ -633,8 +632,8 @@ class Paragraph {
|
|
|
633
632
|
}
|
|
634
633
|
setFirstLineIndent(twips) {
|
|
635
634
|
if (this.formatting.numbering) {
|
|
636
|
-
logger_1.defaultLogger.warn(
|
|
637
|
-
|
|
635
|
+
logger_1.defaultLogger.warn('Setting first line indentation on a numbered paragraph has no effect. ' +
|
|
636
|
+
'Numbering controls indentation using hanging indent.');
|
|
638
637
|
}
|
|
639
638
|
const previousValue = this.formatting.indentation?.firstLine;
|
|
640
639
|
if (!this.formatting.indentation) {
|
|
@@ -651,8 +650,8 @@ class Paragraph {
|
|
|
651
650
|
throw new Error('Hanging indent must be non-negative');
|
|
652
651
|
}
|
|
653
652
|
if (this.formatting.numbering) {
|
|
654
|
-
logger_1.defaultLogger.warn(
|
|
655
|
-
|
|
653
|
+
logger_1.defaultLogger.warn('Setting hanging indentation on a numbered paragraph has no effect. ' +
|
|
654
|
+
'Numbering controls indentation.');
|
|
656
655
|
}
|
|
657
656
|
const previousValue = this.formatting.indentation?.hanging;
|
|
658
657
|
if (!this.formatting.indentation) {
|
|
@@ -686,7 +685,7 @@ class Paragraph {
|
|
|
686
685
|
}
|
|
687
686
|
return this;
|
|
688
687
|
}
|
|
689
|
-
setLineSpacing(twips, rule =
|
|
688
|
+
setLineSpacing(twips, rule = 'auto') {
|
|
690
689
|
const previousLine = this.formatting.spacing?.line;
|
|
691
690
|
const previousRule = this.formatting.spacing?.lineRule;
|
|
692
691
|
if (!this.formatting.spacing) {
|
|
@@ -755,10 +754,10 @@ class Paragraph {
|
|
|
755
754
|
}
|
|
756
755
|
setNumbering(numId, level = 0) {
|
|
757
756
|
if (numId < 0) {
|
|
758
|
-
throw new Error(
|
|
757
|
+
throw new Error('Numbering ID must be non-negative');
|
|
759
758
|
}
|
|
760
759
|
if (level < 0 || level > 8) {
|
|
761
|
-
throw new Error(
|
|
760
|
+
throw new Error('Level must be between 0 and 8');
|
|
762
761
|
}
|
|
763
762
|
const previousValue = this.formatting.numbering;
|
|
764
763
|
this.formatting.numbering = { numId, level };
|
|
@@ -789,9 +788,7 @@ class Paragraph {
|
|
|
789
788
|
return this;
|
|
790
789
|
}
|
|
791
790
|
getNumbering() {
|
|
792
|
-
return this.formatting.numbering
|
|
793
|
-
? { ...this.formatting.numbering }
|
|
794
|
-
: undefined;
|
|
791
|
+
return this.formatting.numbering ? { ...this.formatting.numbering } : undefined;
|
|
795
792
|
}
|
|
796
793
|
setWidowControl(enable = true) {
|
|
797
794
|
const previousValue = this.formatting.widowControl;
|
|
@@ -803,7 +800,7 @@ class Paragraph {
|
|
|
803
800
|
}
|
|
804
801
|
setOutlineLevel(level) {
|
|
805
802
|
if (level < 0 || level > 9) {
|
|
806
|
-
throw new Error(
|
|
803
|
+
throw new Error('Outline level must be between 0 and 9');
|
|
807
804
|
}
|
|
808
805
|
const previousValue = this.formatting.outlineLevel;
|
|
809
806
|
this.formatting.outlineLevel = level;
|
|
@@ -995,78 +992,78 @@ class Paragraph {
|
|
|
995
992
|
text: run.getText(),
|
|
996
993
|
rtl: run.isRTL(),
|
|
997
994
|
}));
|
|
998
|
-
(0, diagnostics_1.logParagraphContent)(
|
|
995
|
+
(0, diagnostics_1.logParagraphContent)('serialization', -1, runData, this.formatting.bidi);
|
|
999
996
|
if (this.formatting.bidi) {
|
|
1000
997
|
(0, diagnostics_1.logTextDirection)(`Serializing paragraph with BiDi enabled`);
|
|
1001
998
|
}
|
|
1002
999
|
const pPrChildren = [];
|
|
1003
1000
|
if (this.formatting.style) {
|
|
1004
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1001
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('pStyle', { 'w:val': this.formatting.style }));
|
|
1005
1002
|
}
|
|
1006
1003
|
if (this.formatting.keepNext) {
|
|
1007
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1004
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepNext'));
|
|
1008
1005
|
}
|
|
1009
1006
|
if (this.formatting.keepLines) {
|
|
1010
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1007
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepLines'));
|
|
1011
1008
|
}
|
|
1012
1009
|
if (this.formatting.pageBreakBefore) {
|
|
1013
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1010
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('pageBreakBefore'));
|
|
1014
1011
|
}
|
|
1015
1012
|
if (this.formatting.framePr) {
|
|
1016
1013
|
const attrs = {};
|
|
1017
1014
|
const f = this.formatting.framePr;
|
|
1018
1015
|
if (f.w !== undefined)
|
|
1019
|
-
attrs[
|
|
1016
|
+
attrs['w:w'] = f.w.toString();
|
|
1020
1017
|
if (f.h !== undefined)
|
|
1021
|
-
attrs[
|
|
1018
|
+
attrs['w:h'] = f.h.toString();
|
|
1022
1019
|
if (f.hRule)
|
|
1023
|
-
attrs[
|
|
1020
|
+
attrs['w:hRule'] = f.hRule;
|
|
1024
1021
|
if (f.x !== undefined)
|
|
1025
|
-
attrs[
|
|
1022
|
+
attrs['w:x'] = f.x.toString();
|
|
1026
1023
|
if (f.y !== undefined)
|
|
1027
|
-
attrs[
|
|
1024
|
+
attrs['w:y'] = f.y.toString();
|
|
1028
1025
|
if (f.xAlign)
|
|
1029
|
-
attrs[
|
|
1026
|
+
attrs['w:xAlign'] = f.xAlign;
|
|
1030
1027
|
if (f.yAlign)
|
|
1031
|
-
attrs[
|
|
1028
|
+
attrs['w:yAlign'] = f.yAlign;
|
|
1032
1029
|
if (f.hAnchor)
|
|
1033
|
-
attrs[
|
|
1030
|
+
attrs['w:hAnchor'] = f.hAnchor;
|
|
1034
1031
|
if (f.vAnchor)
|
|
1035
|
-
attrs[
|
|
1032
|
+
attrs['w:vAnchor'] = f.vAnchor;
|
|
1036
1033
|
if (f.hSpace !== undefined)
|
|
1037
|
-
attrs[
|
|
1034
|
+
attrs['w:hSpace'] = f.hSpace.toString();
|
|
1038
1035
|
if (f.vSpace !== undefined)
|
|
1039
|
-
attrs[
|
|
1036
|
+
attrs['w:vSpace'] = f.vSpace.toString();
|
|
1040
1037
|
if (f.wrap)
|
|
1041
|
-
attrs[
|
|
1038
|
+
attrs['w:wrap'] = f.wrap;
|
|
1042
1039
|
if (f.dropCap)
|
|
1043
|
-
attrs[
|
|
1040
|
+
attrs['w:dropCap'] = f.dropCap;
|
|
1044
1041
|
if (f.lines !== undefined)
|
|
1045
|
-
attrs[
|
|
1042
|
+
attrs['w:lines'] = f.lines.toString();
|
|
1046
1043
|
if (f.anchorLock !== undefined)
|
|
1047
|
-
attrs[
|
|
1044
|
+
attrs['w:anchorLock'] = f.anchorLock ? '1' : '0';
|
|
1048
1045
|
if (Object.keys(attrs).length > 0) {
|
|
1049
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1046
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('framePr', attrs));
|
|
1050
1047
|
}
|
|
1051
1048
|
}
|
|
1052
1049
|
if (this.formatting.widowControl !== undefined) {
|
|
1053
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1054
|
-
|
|
1050
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('widowControl', {
|
|
1051
|
+
'w:val': this.formatting.widowControl ? '1' : '0',
|
|
1055
1052
|
}));
|
|
1056
1053
|
}
|
|
1057
1054
|
if (this.formatting.numbering) {
|
|
1058
|
-
const numPr = XMLBuilder_1.XMLBuilder.w(
|
|
1059
|
-
XMLBuilder_1.XMLBuilder.wSelf(
|
|
1060
|
-
|
|
1055
|
+
const numPr = XMLBuilder_1.XMLBuilder.w('numPr', undefined, [
|
|
1056
|
+
XMLBuilder_1.XMLBuilder.wSelf('ilvl', {
|
|
1057
|
+
'w:val': this.formatting.numbering.level.toString(),
|
|
1061
1058
|
}),
|
|
1062
|
-
XMLBuilder_1.XMLBuilder.wSelf(
|
|
1063
|
-
|
|
1059
|
+
XMLBuilder_1.XMLBuilder.wSelf('numId', {
|
|
1060
|
+
'w:val': this.formatting.numbering.numId.toString(),
|
|
1064
1061
|
}),
|
|
1065
1062
|
]);
|
|
1066
1063
|
pPrChildren.push(numPr);
|
|
1067
1064
|
}
|
|
1068
1065
|
if (this.formatting.suppressLineNumbers) {
|
|
1069
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1066
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('suppressLineNumbers'));
|
|
1070
1067
|
}
|
|
1071
1068
|
if (this.formatting.borders) {
|
|
1072
1069
|
const borderChildren = [];
|
|
@@ -1076,160 +1073,158 @@ class Paragraph {
|
|
|
1076
1073
|
return null;
|
|
1077
1074
|
const attributes = {};
|
|
1078
1075
|
if (border.style)
|
|
1079
|
-
attributes[
|
|
1076
|
+
attributes['w:val'] = border.style;
|
|
1080
1077
|
if (border.size !== undefined)
|
|
1081
|
-
attributes[
|
|
1078
|
+
attributes['w:sz'] = border.size;
|
|
1082
1079
|
if (border.color)
|
|
1083
|
-
attributes[
|
|
1080
|
+
attributes['w:color'] = border.color;
|
|
1084
1081
|
if (border.space !== undefined)
|
|
1085
|
-
attributes[
|
|
1082
|
+
attributes['w:space'] = border.space;
|
|
1086
1083
|
if (Object.keys(attributes).length > 0) {
|
|
1087
1084
|
return XMLBuilder_1.XMLBuilder.wSelf(borderType, attributes);
|
|
1088
1085
|
}
|
|
1089
1086
|
return null;
|
|
1090
1087
|
};
|
|
1091
|
-
const topBorder = createBorder(
|
|
1088
|
+
const topBorder = createBorder('top', borders.top);
|
|
1092
1089
|
if (topBorder)
|
|
1093
1090
|
borderChildren.push(topBorder);
|
|
1094
|
-
const leftBorder = createBorder(
|
|
1091
|
+
const leftBorder = createBorder('left', borders.left);
|
|
1095
1092
|
if (leftBorder)
|
|
1096
1093
|
borderChildren.push(leftBorder);
|
|
1097
|
-
const bottomBorder = createBorder(
|
|
1094
|
+
const bottomBorder = createBorder('bottom', borders.bottom);
|
|
1098
1095
|
if (bottomBorder)
|
|
1099
1096
|
borderChildren.push(bottomBorder);
|
|
1100
|
-
const rightBorder = createBorder(
|
|
1097
|
+
const rightBorder = createBorder('right', borders.right);
|
|
1101
1098
|
if (rightBorder)
|
|
1102
1099
|
borderChildren.push(rightBorder);
|
|
1103
|
-
const betweenBorder = createBorder(
|
|
1100
|
+
const betweenBorder = createBorder('between', borders.between);
|
|
1104
1101
|
if (betweenBorder)
|
|
1105
1102
|
borderChildren.push(betweenBorder);
|
|
1106
|
-
const barBorder = createBorder(
|
|
1103
|
+
const barBorder = createBorder('bar', borders.bar);
|
|
1107
1104
|
if (barBorder)
|
|
1108
1105
|
borderChildren.push(barBorder);
|
|
1109
1106
|
if (borderChildren.length > 0) {
|
|
1110
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1107
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.w('pBdr', undefined, borderChildren));
|
|
1111
1108
|
}
|
|
1112
1109
|
}
|
|
1113
1110
|
if (this.formatting.shading) {
|
|
1114
1111
|
const shdAttrs = (0, CommonTypes_1.buildShadingAttributes)(this.formatting.shading);
|
|
1115
1112
|
if (Object.keys(shdAttrs).length > 0) {
|
|
1116
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1113
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('shd', shdAttrs));
|
|
1117
1114
|
}
|
|
1118
1115
|
}
|
|
1119
1116
|
if (this.formatting.tabs && this.formatting.tabs.length > 0) {
|
|
1120
1117
|
const tabChildren = [];
|
|
1121
1118
|
for (const tab of this.formatting.tabs) {
|
|
1122
1119
|
const attributes = {};
|
|
1123
|
-
attributes[
|
|
1120
|
+
attributes['w:pos'] = tab.position;
|
|
1124
1121
|
if (tab.val)
|
|
1125
|
-
attributes[
|
|
1122
|
+
attributes['w:val'] = tab.val;
|
|
1126
1123
|
if (tab.leader)
|
|
1127
|
-
attributes[
|
|
1128
|
-
tabChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1124
|
+
attributes['w:leader'] = tab.leader;
|
|
1125
|
+
tabChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tab', attributes));
|
|
1129
1126
|
}
|
|
1130
1127
|
if (tabChildren.length > 0) {
|
|
1131
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1128
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.w('tabs', undefined, tabChildren));
|
|
1132
1129
|
}
|
|
1133
1130
|
}
|
|
1134
1131
|
if (this.formatting.suppressAutoHyphens) {
|
|
1135
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1132
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('suppressAutoHyphens'));
|
|
1136
1133
|
}
|
|
1137
1134
|
if (this.formatting.kinsoku !== undefined) {
|
|
1138
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1135
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('kinsoku', { 'w:val': this.formatting.kinsoku ? '1' : '0' }));
|
|
1139
1136
|
}
|
|
1140
1137
|
if (this.formatting.wordWrap !== undefined) {
|
|
1141
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1138
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('wordWrap', { 'w:val': this.formatting.wordWrap ? '1' : '0' }));
|
|
1142
1139
|
}
|
|
1143
1140
|
if (this.formatting.overflowPunct !== undefined) {
|
|
1144
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1141
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('overflowPunct', { 'w:val': this.formatting.overflowPunct ? '1' : '0' }));
|
|
1145
1142
|
}
|
|
1146
1143
|
if (this.formatting.topLinePunct !== undefined) {
|
|
1147
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1144
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('topLinePunct', { 'w:val': this.formatting.topLinePunct ? '1' : '0' }));
|
|
1148
1145
|
}
|
|
1149
1146
|
if (this.formatting.autoSpaceDE !== undefined) {
|
|
1150
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1147
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('autoSpaceDE', { 'w:val': this.formatting.autoSpaceDE ? '1' : '0' }));
|
|
1151
1148
|
}
|
|
1152
1149
|
if (this.formatting.autoSpaceDN !== undefined) {
|
|
1153
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1150
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('autoSpaceDN', { 'w:val': this.formatting.autoSpaceDN ? '1' : '0' }));
|
|
1154
1151
|
}
|
|
1155
1152
|
if (this.formatting.bidi !== undefined) {
|
|
1156
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1153
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('bidi', { 'w:val': this.formatting.bidi ? '1' : '0' }));
|
|
1157
1154
|
}
|
|
1158
1155
|
if (this.formatting.adjustRightInd !== undefined) {
|
|
1159
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1160
|
-
|
|
1156
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('adjustRightInd', {
|
|
1157
|
+
'w:val': this.formatting.adjustRightInd ? '1' : '0',
|
|
1161
1158
|
}));
|
|
1162
1159
|
}
|
|
1163
1160
|
if (this.formatting.spacing) {
|
|
1164
1161
|
const spc = this.formatting.spacing;
|
|
1165
1162
|
const attributes = {};
|
|
1166
1163
|
if (spc.before !== undefined)
|
|
1167
|
-
attributes[
|
|
1164
|
+
attributes['w:before'] = spc.before;
|
|
1168
1165
|
if (spc.after !== undefined)
|
|
1169
|
-
attributes[
|
|
1166
|
+
attributes['w:after'] = spc.after;
|
|
1170
1167
|
if (spc.line !== undefined)
|
|
1171
|
-
attributes[
|
|
1168
|
+
attributes['w:line'] = spc.line;
|
|
1172
1169
|
if (spc.lineRule)
|
|
1173
|
-
attributes[
|
|
1170
|
+
attributes['w:lineRule'] = spc.lineRule;
|
|
1174
1171
|
if (Object.keys(attributes).length > 0) {
|
|
1175
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1172
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('spacing', attributes));
|
|
1176
1173
|
}
|
|
1177
1174
|
}
|
|
1178
1175
|
if (this.formatting.indentation) {
|
|
1179
1176
|
const ind = this.formatting.indentation;
|
|
1180
1177
|
const attributes = {};
|
|
1181
1178
|
if (ind.left !== undefined)
|
|
1182
|
-
attributes[
|
|
1179
|
+
attributes['w:left'] = ind.left;
|
|
1183
1180
|
if (ind.right !== undefined)
|
|
1184
|
-
attributes[
|
|
1181
|
+
attributes['w:right'] = ind.right;
|
|
1185
1182
|
if (ind.firstLine !== undefined)
|
|
1186
|
-
attributes[
|
|
1183
|
+
attributes['w:firstLine'] = ind.firstLine;
|
|
1187
1184
|
if (ind.hanging !== undefined)
|
|
1188
|
-
attributes[
|
|
1185
|
+
attributes['w:hanging'] = ind.hanging;
|
|
1189
1186
|
if (Object.keys(attributes).length > 0) {
|
|
1190
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1187
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ind', attributes));
|
|
1191
1188
|
}
|
|
1192
1189
|
}
|
|
1193
1190
|
if (this.formatting.contextualSpacing) {
|
|
1194
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1191
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('contextualSpacing', { 'w:val': '1' }));
|
|
1195
1192
|
}
|
|
1196
1193
|
if (this.formatting.mirrorIndents) {
|
|
1197
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1194
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('mirrorIndents'));
|
|
1198
1195
|
}
|
|
1199
1196
|
if (this.formatting.suppressOverlap) {
|
|
1200
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1197
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('suppressOverlap'));
|
|
1201
1198
|
}
|
|
1202
1199
|
if (this.formatting.alignment) {
|
|
1203
|
-
const alignmentValue = this.formatting.alignment ===
|
|
1204
|
-
|
|
1205
|
-
: this.formatting.alignment;
|
|
1206
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("jc", { "w:val": alignmentValue }));
|
|
1200
|
+
const alignmentValue = this.formatting.alignment === 'justify' ? 'both' : this.formatting.alignment;
|
|
1201
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': alignmentValue }));
|
|
1207
1202
|
}
|
|
1208
1203
|
if (this.formatting.textDirection) {
|
|
1209
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1210
|
-
|
|
1204
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('textDirection', {
|
|
1205
|
+
'w:val': this.formatting.textDirection,
|
|
1211
1206
|
}));
|
|
1212
1207
|
}
|
|
1213
1208
|
if (this.formatting.textAlignment) {
|
|
1214
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1215
|
-
|
|
1209
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('textAlignment', {
|
|
1210
|
+
'w:val': this.formatting.textAlignment,
|
|
1216
1211
|
}));
|
|
1217
1212
|
}
|
|
1218
1213
|
if (this.formatting.textboxTightWrap) {
|
|
1219
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1220
|
-
|
|
1214
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('textboxTightWrap', {
|
|
1215
|
+
'w:val': this.formatting.textboxTightWrap,
|
|
1221
1216
|
}));
|
|
1222
1217
|
}
|
|
1223
1218
|
if (this.formatting.outlineLevel !== undefined) {
|
|
1224
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1225
|
-
|
|
1219
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('outlineLvl', {
|
|
1220
|
+
'w:val': this.formatting.outlineLevel.toString(),
|
|
1226
1221
|
}));
|
|
1227
1222
|
}
|
|
1228
1223
|
if (this.formatting.divId !== undefined) {
|
|
1229
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1224
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('divId', { 'w:val': this.formatting.divId.toString() }));
|
|
1230
1225
|
}
|
|
1231
1226
|
if (this.formatting.cnfStyle) {
|
|
1232
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1227
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cnfStyle', { 'w:val': this.formatting.cnfStyle }));
|
|
1233
1228
|
}
|
|
1234
1229
|
if (this.formatting.paragraphMarkRunProperties ||
|
|
1235
1230
|
this.formatting.paragraphMarkDeletion ||
|
|
@@ -1239,7 +1234,7 @@ class Paragraph {
|
|
|
1239
1234
|
const rPr = Run_1.Run.generateRunPropertiesXML(this.formatting.paragraphMarkRunProperties);
|
|
1240
1235
|
if (rPr?.children) {
|
|
1241
1236
|
for (const child of rPr.children) {
|
|
1242
|
-
if (typeof child !==
|
|
1237
|
+
if (typeof child !== 'string') {
|
|
1243
1238
|
rPrChildren.push(child);
|
|
1244
1239
|
}
|
|
1245
1240
|
}
|
|
@@ -1247,28 +1242,28 @@ class Paragraph {
|
|
|
1247
1242
|
}
|
|
1248
1243
|
if (this.formatting.paragraphMarkInsertion) {
|
|
1249
1244
|
const ins = this.formatting.paragraphMarkInsertion;
|
|
1250
|
-
rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1245
|
+
rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ins', {
|
|
1246
|
+
'w:id': ins.id.toString(),
|
|
1247
|
+
'w:author': ins.author,
|
|
1248
|
+
'w:date': (0, dateFormatting_1.formatDateForXml)(ins.date),
|
|
1254
1249
|
}));
|
|
1255
1250
|
}
|
|
1256
1251
|
if (this.formatting.paragraphMarkDeletion) {
|
|
1257
1252
|
const del = this.formatting.paragraphMarkDeletion;
|
|
1258
|
-
rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1253
|
+
rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('del', {
|
|
1254
|
+
'w:id': del.id.toString(),
|
|
1255
|
+
'w:author': del.author,
|
|
1256
|
+
'w:date': (0, dateFormatting_1.formatDateForXml)(del.date),
|
|
1262
1257
|
}));
|
|
1263
1258
|
}
|
|
1264
1259
|
if (rPrChildren.length > 0) {
|
|
1265
|
-
pPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1260
|
+
pPrChildren.push(XMLBuilder_1.XMLBuilder.w('rPr', undefined, rPrChildren));
|
|
1266
1261
|
}
|
|
1267
1262
|
}
|
|
1268
1263
|
if (this.formatting.sectPr) {
|
|
1269
1264
|
if (typeof this.formatting.sectPr === 'string') {
|
|
1270
1265
|
pPrChildren.push({
|
|
1271
|
-
name:
|
|
1266
|
+
name: '__rawXml',
|
|
1272
1267
|
rawXml: this.formatting.sectPr,
|
|
1273
1268
|
});
|
|
1274
1269
|
}
|
|
@@ -1277,162 +1272,164 @@ class Paragraph {
|
|
|
1277
1272
|
const change = this.formatting.pPrChange;
|
|
1278
1273
|
const attrs = {};
|
|
1279
1274
|
if (change.id)
|
|
1280
|
-
attrs[
|
|
1275
|
+
attrs['w:id'] = change.id;
|
|
1281
1276
|
if (change.author)
|
|
1282
|
-
attrs[
|
|
1277
|
+
attrs['w:author'] = change.author;
|
|
1283
1278
|
if (change.date)
|
|
1284
|
-
attrs[
|
|
1279
|
+
attrs['w:date'] = change.date;
|
|
1285
1280
|
const prevPPrChildren = [];
|
|
1286
1281
|
if (change.previousProperties) {
|
|
1287
1282
|
const prev = change.previousProperties;
|
|
1288
1283
|
if (prev.style) {
|
|
1289
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1284
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('pStyle', { 'w:val': prev.style }));
|
|
1290
1285
|
}
|
|
1291
1286
|
if (prev.keepNext !== undefined) {
|
|
1292
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1287
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepNext', prev.keepNext ? { 'w:val': '1' } : { 'w:val': '0' }));
|
|
1293
1288
|
}
|
|
1294
1289
|
if (prev.keepLines !== undefined) {
|
|
1295
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1290
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepLines', prev.keepLines ? { 'w:val': '1' } : { 'w:val': '0' }));
|
|
1296
1291
|
}
|
|
1297
1292
|
if (prev.pageBreakBefore !== undefined) {
|
|
1298
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1293
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('pageBreakBefore', prev.pageBreakBefore ? { 'w:val': '1' } : { 'w:val': '0' }));
|
|
1299
1294
|
}
|
|
1300
1295
|
if (prev.widowControl !== undefined) {
|
|
1301
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1302
|
-
|
|
1296
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('widowControl', {
|
|
1297
|
+
'w:val': prev.widowControl ? '1' : '0',
|
|
1303
1298
|
}));
|
|
1304
1299
|
}
|
|
1305
1300
|
if (prev.numbering) {
|
|
1306
1301
|
const numPrChildren = [];
|
|
1307
1302
|
if (prev.numbering.level !== undefined) {
|
|
1308
|
-
numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1303
|
+
numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ilvl', { 'w:val': prev.numbering.level.toString() }));
|
|
1309
1304
|
}
|
|
1310
1305
|
if (prev.numbering.numId !== undefined) {
|
|
1311
|
-
numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1306
|
+
numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('numId', { 'w:val': prev.numbering.numId.toString() }));
|
|
1312
1307
|
}
|
|
1313
1308
|
if (numPrChildren.length > 0) {
|
|
1314
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1309
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w('numPr', undefined, numPrChildren));
|
|
1315
1310
|
}
|
|
1316
1311
|
}
|
|
1317
1312
|
if (prev.suppressLineNumbers !== undefined) {
|
|
1318
1313
|
if (prev.suppressLineNumbers) {
|
|
1319
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1314
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('suppressLineNumbers'));
|
|
1320
1315
|
}
|
|
1321
1316
|
}
|
|
1322
1317
|
if (prev.borders) {
|
|
1323
1318
|
const borderChildren = [];
|
|
1324
|
-
const borderSides = [
|
|
1319
|
+
const borderSides = ['top', 'left', 'bottom', 'right', 'between', 'bar'];
|
|
1325
1320
|
for (const side of borderSides) {
|
|
1326
1321
|
const border = prev.borders[side];
|
|
1327
1322
|
if (border) {
|
|
1328
1323
|
const attrs = {};
|
|
1329
1324
|
if (border.style)
|
|
1330
|
-
attrs[
|
|
1325
|
+
attrs['w:val'] = border.style;
|
|
1331
1326
|
if (border.size !== undefined)
|
|
1332
|
-
attrs[
|
|
1327
|
+
attrs['w:sz'] = border.size.toString();
|
|
1333
1328
|
if (border.color)
|
|
1334
|
-
attrs[
|
|
1329
|
+
attrs['w:color'] = border.color;
|
|
1335
1330
|
if (border.space !== undefined)
|
|
1336
|
-
attrs[
|
|
1331
|
+
attrs['w:space'] = border.space.toString();
|
|
1337
1332
|
if (Object.keys(attrs).length > 0) {
|
|
1338
1333
|
borderChildren.push(XMLBuilder_1.XMLBuilder.wSelf(side, attrs));
|
|
1339
1334
|
}
|
|
1340
1335
|
}
|
|
1341
1336
|
}
|
|
1342
1337
|
if (borderChildren.length > 0) {
|
|
1343
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1338
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w('pBdr', undefined, borderChildren));
|
|
1344
1339
|
}
|
|
1345
1340
|
}
|
|
1346
1341
|
if (prev.shading) {
|
|
1347
1342
|
const shdAttrs = (0, CommonTypes_1.buildShadingAttributes)(prev.shading);
|
|
1348
1343
|
if (Object.keys(shdAttrs).length > 0) {
|
|
1349
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1344
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('shd', shdAttrs));
|
|
1350
1345
|
}
|
|
1351
1346
|
}
|
|
1352
1347
|
if (prev.tabs && prev.tabs.length > 0) {
|
|
1353
1348
|
const tabChildren = prev.tabs.map((tab) => {
|
|
1354
1349
|
const tabAttrs = {
|
|
1355
|
-
|
|
1350
|
+
'w:pos': tab.position.toString(),
|
|
1356
1351
|
};
|
|
1357
1352
|
if (tab.val)
|
|
1358
|
-
tabAttrs[
|
|
1353
|
+
tabAttrs['w:val'] = tab.val;
|
|
1359
1354
|
if (tab.leader)
|
|
1360
|
-
tabAttrs[
|
|
1361
|
-
return XMLBuilder_1.XMLBuilder.wSelf(
|
|
1355
|
+
tabAttrs['w:leader'] = tab.leader;
|
|
1356
|
+
return XMLBuilder_1.XMLBuilder.wSelf('tab', tabAttrs);
|
|
1362
1357
|
});
|
|
1363
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1358
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.w('tabs', undefined, tabChildren));
|
|
1364
1359
|
}
|
|
1365
1360
|
if (prev.suppressAutoHyphens !== undefined) {
|
|
1366
1361
|
if (prev.suppressAutoHyphens) {
|
|
1367
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1362
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('suppressAutoHyphens', { 'w:val': '1' }));
|
|
1368
1363
|
}
|
|
1369
1364
|
}
|
|
1370
1365
|
if (prev.bidi !== undefined) {
|
|
1371
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1366
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('bidi', { 'w:val': prev.bidi ? '1' : '0' }));
|
|
1372
1367
|
}
|
|
1373
1368
|
if (prev.adjustRightInd !== undefined) {
|
|
1374
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1375
|
-
|
|
1369
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('adjustRightInd', {
|
|
1370
|
+
'w:val': prev.adjustRightInd ? '1' : '0',
|
|
1376
1371
|
}));
|
|
1377
1372
|
}
|
|
1378
1373
|
if (prev.spacing) {
|
|
1379
1374
|
const spacingAttrs = {};
|
|
1380
1375
|
if (prev.spacing.before !== undefined)
|
|
1381
|
-
spacingAttrs[
|
|
1376
|
+
spacingAttrs['w:before'] = prev.spacing.before.toString();
|
|
1382
1377
|
if (prev.spacing.after !== undefined)
|
|
1383
|
-
spacingAttrs[
|
|
1378
|
+
spacingAttrs['w:after'] = prev.spacing.after.toString();
|
|
1384
1379
|
if (prev.spacing.line !== undefined)
|
|
1385
|
-
spacingAttrs[
|
|
1380
|
+
spacingAttrs['w:line'] = prev.spacing.line.toString();
|
|
1386
1381
|
if (prev.spacing.lineRule)
|
|
1387
|
-
spacingAttrs[
|
|
1382
|
+
spacingAttrs['w:lineRule'] = prev.spacing.lineRule;
|
|
1388
1383
|
if (Object.keys(spacingAttrs).length > 0) {
|
|
1389
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1384
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('spacing', spacingAttrs));
|
|
1390
1385
|
}
|
|
1391
1386
|
}
|
|
1392
1387
|
if (prev.indentation) {
|
|
1393
1388
|
const indAttrs = {};
|
|
1394
1389
|
if (prev.indentation.left !== undefined)
|
|
1395
|
-
indAttrs[
|
|
1390
|
+
indAttrs['w:left'] = prev.indentation.left.toString();
|
|
1396
1391
|
if (prev.indentation.right !== undefined)
|
|
1397
|
-
indAttrs[
|
|
1392
|
+
indAttrs['w:right'] = prev.indentation.right.toString();
|
|
1398
1393
|
if (prev.indentation.firstLine !== undefined)
|
|
1399
|
-
indAttrs[
|
|
1394
|
+
indAttrs['w:firstLine'] = prev.indentation.firstLine.toString();
|
|
1400
1395
|
if (prev.indentation.hanging !== undefined)
|
|
1401
|
-
indAttrs[
|
|
1402
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1396
|
+
indAttrs['w:hanging'] = prev.indentation.hanging.toString();
|
|
1397
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ind', indAttrs));
|
|
1403
1398
|
}
|
|
1404
1399
|
if (prev.contextualSpacing !== undefined) {
|
|
1405
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1406
|
-
|
|
1400
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('contextualSpacing', {
|
|
1401
|
+
'w:val': prev.contextualSpacing ? '1' : '0',
|
|
1407
1402
|
}));
|
|
1408
1403
|
}
|
|
1409
1404
|
if (prev.mirrorIndents !== undefined) {
|
|
1410
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1411
|
-
|
|
1405
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('mirrorIndents', {
|
|
1406
|
+
'w:val': prev.mirrorIndents ? '1' : '0',
|
|
1412
1407
|
}));
|
|
1413
1408
|
}
|
|
1414
1409
|
if (prev.alignment) {
|
|
1415
|
-
const alignmentValue = prev.alignment ===
|
|
1416
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1410
|
+
const alignmentValue = prev.alignment === 'justify' ? 'both' : prev.alignment;
|
|
1411
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': alignmentValue }));
|
|
1417
1412
|
}
|
|
1418
1413
|
if (prev.textDirection) {
|
|
1419
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1414
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('textDirection', { 'w:val': prev.textDirection }));
|
|
1420
1415
|
}
|
|
1421
1416
|
if (prev.textAlignment) {
|
|
1422
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1417
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('textAlignment', { 'w:val': prev.textAlignment }));
|
|
1423
1418
|
}
|
|
1424
1419
|
if (prev.outlineLevel !== undefined) {
|
|
1425
|
-
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf(
|
|
1420
|
+
prevPPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('outlineLvl', { 'w:val': prev.outlineLevel.toString() }));
|
|
1426
1421
|
}
|
|
1427
1422
|
}
|
|
1428
1423
|
if (prevPPrChildren.length > 0) {
|
|
1429
|
-
const pPrChangeChildren = [
|
|
1430
|
-
|
|
1424
|
+
const pPrChangeChildren = [
|
|
1425
|
+
{
|
|
1426
|
+
name: 'w:pPr',
|
|
1431
1427
|
attributes: {},
|
|
1432
1428
|
children: prevPPrChildren,
|
|
1433
|
-
}
|
|
1429
|
+
},
|
|
1430
|
+
];
|
|
1434
1431
|
pPrChildren.push({
|
|
1435
|
-
name:
|
|
1432
|
+
name: 'w:pPrChange',
|
|
1436
1433
|
attributes: attrs,
|
|
1437
1434
|
children: pPrChangeChildren,
|
|
1438
1435
|
});
|
|
@@ -1440,7 +1437,7 @@ class Paragraph {
|
|
|
1440
1437
|
}
|
|
1441
1438
|
const paragraphChildren = [];
|
|
1442
1439
|
if (pPrChildren.length > 0) {
|
|
1443
|
-
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1440
|
+
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w('pPr', undefined, pPrChildren));
|
|
1444
1441
|
}
|
|
1445
1442
|
for (const bookmark of this.bookmarksStart) {
|
|
1446
1443
|
paragraphChildren.push(bookmark.toStartXML());
|
|
@@ -1459,7 +1456,7 @@ class Paragraph {
|
|
|
1459
1456
|
paragraphChildren.push(...fieldXml);
|
|
1460
1457
|
}
|
|
1461
1458
|
else {
|
|
1462
|
-
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1459
|
+
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w('r', undefined, [fieldXml]));
|
|
1463
1460
|
}
|
|
1464
1461
|
}
|
|
1465
1462
|
else if (item instanceof Hyperlink_1.Hyperlink) {
|
|
@@ -1486,17 +1483,17 @@ class Paragraph {
|
|
|
1486
1483
|
paragraphChildren.push(item.toXML());
|
|
1487
1484
|
}
|
|
1488
1485
|
else if (item instanceof Shape_1.Shape) {
|
|
1489
|
-
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1486
|
+
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w('r', undefined, [item.toXML()]));
|
|
1490
1487
|
}
|
|
1491
1488
|
else if (item instanceof TextBox_1.TextBox) {
|
|
1492
|
-
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w(
|
|
1489
|
+
paragraphChildren.push(XMLBuilder_1.XMLBuilder.w('r', undefined, [item.toXML()]));
|
|
1493
1490
|
}
|
|
1494
1491
|
else if (item) {
|
|
1495
1492
|
paragraphChildren.push(item.toXML());
|
|
1496
1493
|
}
|
|
1497
1494
|
}
|
|
1498
1495
|
if (this.content.length === 0) {
|
|
1499
|
-
paragraphChildren.push(new Run_1.Run(
|
|
1496
|
+
paragraphChildren.push(new Run_1.Run('').toXML());
|
|
1500
1497
|
}
|
|
1501
1498
|
for (const comment of this.commentsEnd) {
|
|
1502
1499
|
paragraphChildren.push(comment.toRangeEndXML());
|
|
@@ -1509,11 +1506,9 @@ class Paragraph {
|
|
|
1509
1506
|
}
|
|
1510
1507
|
const paragraphAttributes = {};
|
|
1511
1508
|
if (this.formatting.paraId) {
|
|
1512
|
-
paragraphAttributes[
|
|
1509
|
+
paragraphAttributes['w14:paraId'] = this.formatting.paraId;
|
|
1513
1510
|
}
|
|
1514
|
-
return XMLBuilder_1.XMLBuilder.w(
|
|
1515
|
-
? paragraphAttributes
|
|
1516
|
-
: undefined, paragraphChildren);
|
|
1511
|
+
return XMLBuilder_1.XMLBuilder.w('p', Object.keys(paragraphAttributes).length > 0 ? paragraphAttributes : undefined, paragraphChildren);
|
|
1517
1512
|
}
|
|
1518
1513
|
getWordCount() {
|
|
1519
1514
|
const text = this.getText().trim();
|
|
@@ -1528,7 +1523,7 @@ class Paragraph {
|
|
|
1528
1523
|
return text.length;
|
|
1529
1524
|
}
|
|
1530
1525
|
else {
|
|
1531
|
-
return text.replace(/\s/g,
|
|
1526
|
+
return text.replace(/\s/g, '').length;
|
|
1532
1527
|
}
|
|
1533
1528
|
}
|
|
1534
1529
|
clone() {
|
|
@@ -1611,11 +1606,9 @@ class Paragraph {
|
|
|
1611
1606
|
for (let i = 0; i < this.content.length; i++) {
|
|
1612
1607
|
const item = this.content[i];
|
|
1613
1608
|
if (item instanceof Run_1.Run) {
|
|
1614
|
-
const runText = caseSensitive
|
|
1615
|
-
? item.getText()
|
|
1616
|
-
: item.getText().toLowerCase();
|
|
1609
|
+
const runText = caseSensitive ? item.getText() : item.getText().toLowerCase();
|
|
1617
1610
|
if (wholeWord) {
|
|
1618
|
-
const wordPattern = new RegExp(`\\b${searchText.replace(/[.*+?^${}()|[\]\\]/g,
|
|
1611
|
+
const wordPattern = new RegExp(`\\b${searchText.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\b`);
|
|
1619
1612
|
if (wordPattern.test(runText)) {
|
|
1620
1613
|
indices.push(i);
|
|
1621
1614
|
}
|
|
@@ -1638,7 +1631,7 @@ class Paragraph {
|
|
|
1638
1631
|
const originalText = item.getText();
|
|
1639
1632
|
let newText = originalText;
|
|
1640
1633
|
if (wholeWord) {
|
|
1641
|
-
const wordPattern = new RegExp(`\\b${find.replace(/[.*+?^${}()|[\]\\]/g,
|
|
1634
|
+
const wordPattern = new RegExp(`\\b${find.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\b`, caseSensitive ? 'g' : 'gi');
|
|
1642
1635
|
const matches = originalText.match(wordPattern);
|
|
1643
1636
|
if (matches) {
|
|
1644
1637
|
replacementCount += matches.length;
|
|
@@ -1646,7 +1639,7 @@ class Paragraph {
|
|
|
1646
1639
|
}
|
|
1647
1640
|
}
|
|
1648
1641
|
else {
|
|
1649
|
-
const searchPattern = new RegExp(find.replace(/[.*+?^${}()|[\]\\]/g,
|
|
1642
|
+
const searchPattern = new RegExp(find.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'), caseSensitive ? 'g' : 'gi');
|
|
1650
1643
|
const matches = originalText.match(searchPattern);
|
|
1651
1644
|
if (matches) {
|
|
1652
1645
|
replacementCount += matches.length;
|
|
@@ -1718,13 +1711,13 @@ class Paragraph {
|
|
|
1718
1711
|
const conflictingParaProps = [];
|
|
1719
1712
|
for (const key in this.formatting) {
|
|
1720
1713
|
const propKey = key;
|
|
1721
|
-
if (propKey ===
|
|
1714
|
+
if (propKey === 'style') {
|
|
1722
1715
|
continue;
|
|
1723
1716
|
}
|
|
1724
1717
|
if (styleParagraphFormatting[propKey] === undefined) {
|
|
1725
1718
|
continue;
|
|
1726
1719
|
}
|
|
1727
|
-
if (propKey ===
|
|
1720
|
+
if (propKey === 'indentation') {
|
|
1728
1721
|
const paraIndent = this.formatting.indentation;
|
|
1729
1722
|
const styleIndent = styleParagraphFormatting.indentation;
|
|
1730
1723
|
if (paraIndent?.left === 0 && styleIndent?.left && styleIndent.left > 0) {
|
|
@@ -1733,10 +1726,10 @@ class Paragraph {
|
|
|
1733
1726
|
conflictingParaProps.push(propKey);
|
|
1734
1727
|
continue;
|
|
1735
1728
|
}
|
|
1736
|
-
if (propKey ===
|
|
1737
|
-
propKey ===
|
|
1738
|
-
propKey ===
|
|
1739
|
-
propKey ===
|
|
1729
|
+
if (propKey === 'spacing' ||
|
|
1730
|
+
propKey === 'borders' ||
|
|
1731
|
+
propKey === 'shading' ||
|
|
1732
|
+
propKey === 'numbering') {
|
|
1740
1733
|
const paraValue = this.formatting[propKey];
|
|
1741
1734
|
const styleValue = styleParagraphFormatting[propKey];
|
|
1742
1735
|
if (JSON.stringify(paraValue) !== JSON.stringify(styleValue)) {
|