docxmlater 5.7.4 → 6.0.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.
Files changed (66) hide show
  1. package/README.md +29 -2
  2. package/dist/core/Document.d.ts +15 -2
  3. package/dist/core/Document.d.ts.map +1 -1
  4. package/dist/core/Document.js +163 -7
  5. package/dist/core/Document.js.map +1 -1
  6. package/dist/core/DocumentGenerator.d.ts +4 -1
  7. package/dist/core/DocumentGenerator.d.ts.map +1 -1
  8. package/dist/core/DocumentGenerator.js +46 -42
  9. package/dist/core/DocumentGenerator.js.map +1 -1
  10. package/dist/core/DocumentParser.d.ts.map +1 -1
  11. package/dist/core/DocumentParser.js +33 -16
  12. package/dist/core/DocumentParser.js.map +1 -1
  13. package/dist/elements/Hyperlink.d.ts +8 -1
  14. package/dist/elements/Hyperlink.d.ts.map +1 -1
  15. package/dist/elements/Hyperlink.js +33 -0
  16. package/dist/elements/Hyperlink.js.map +1 -1
  17. package/dist/elements/Image.d.ts +1 -1
  18. package/dist/elements/Image.d.ts.map +1 -1
  19. package/dist/elements/Image.js +51 -8
  20. package/dist/elements/Image.js.map +1 -1
  21. package/dist/elements/Paragraph.d.ts +1 -0
  22. package/dist/elements/Paragraph.d.ts.map +1 -1
  23. package/dist/elements/Paragraph.js +15 -3
  24. package/dist/elements/Paragraph.js.map +1 -1
  25. package/dist/elements/RevisionManager.d.ts +33 -0
  26. package/dist/elements/RevisionManager.d.ts.map +1 -1
  27. package/dist/elements/RevisionManager.js +149 -0
  28. package/dist/elements/RevisionManager.js.map +1 -1
  29. package/dist/formatting/NumberingManager.d.ts +3 -0
  30. package/dist/formatting/NumberingManager.d.ts.map +1 -1
  31. package/dist/formatting/NumberingManager.js +9 -0
  32. package/dist/formatting/NumberingManager.js.map +1 -1
  33. package/dist/formatting/StylesManager.d.ts +3 -0
  34. package/dist/formatting/StylesManager.d.ts.map +1 -1
  35. package/dist/formatting/StylesManager.js +8 -0
  36. package/dist/formatting/StylesManager.js.map +1 -1
  37. package/dist/index.d.ts +5 -2
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +7 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/utils/ChangelogGenerator.d.ts +82 -0
  42. package/dist/utils/ChangelogGenerator.d.ts.map +1 -0
  43. package/dist/utils/ChangelogGenerator.js +422 -0
  44. package/dist/utils/ChangelogGenerator.js.map +1 -0
  45. package/dist/utils/RevisionAwareProcessor.d.ts +60 -0
  46. package/dist/utils/RevisionAwareProcessor.d.ts.map +1 -0
  47. package/dist/utils/RevisionAwareProcessor.js +237 -0
  48. package/dist/utils/RevisionAwareProcessor.js.map +1 -0
  49. package/dist/utils/SelectiveRevisionAcceptor.d.ts +34 -0
  50. package/dist/utils/SelectiveRevisionAcceptor.d.ts.map +1 -0
  51. package/dist/utils/SelectiveRevisionAcceptor.js +175 -0
  52. package/dist/utils/SelectiveRevisionAcceptor.js.map +1 -0
  53. package/dist/utils/acceptRevisions.d.ts +22 -0
  54. package/dist/utils/acceptRevisions.d.ts.map +1 -0
  55. package/dist/utils/acceptRevisions.js +211 -0
  56. package/dist/utils/acceptRevisions.js.map +1 -0
  57. package/dist/utils/corruptionDetection.js +1 -1
  58. package/dist/utils/corruptionDetection.js.map +1 -1
  59. package/dist/utils/stripTrackedChanges.d.ts +22 -0
  60. package/dist/utils/stripTrackedChanges.d.ts.map +1 -0
  61. package/dist/utils/stripTrackedChanges.js +196 -0
  62. package/dist/utils/stripTrackedChanges.js.map +1 -0
  63. package/dist/xml/XMLParser.d.ts.map +1 -1
  64. package/dist/xml/XMLParser.js +7 -0
  65. package/dist/xml/XMLParser.js.map +1 -1
  66. package/package.json +1 -1
package/README.md CHANGED
@@ -227,8 +227,35 @@ doc.dispose();
227
227
  **Creation & Loading:**
228
228
 
229
229
  - `Document.create(options?)` - Create new document
230
- - `Document.load(filepath)` - Load from file
231
- - `Document.loadFromBuffer(buffer)` - Load from memory
230
+ - `Document.load(filepath, options?)` - Load from file
231
+ - `Document.loadFromBuffer(buffer, options?)` - Load from memory
232
+
233
+ **Handling Tracked Changes:**
234
+
235
+ By default, docXMLater accepts all tracked changes during document loading to prevent corruption:
236
+
237
+ ```typescript
238
+ // Default: Accepts all changes (recommended)
239
+ const doc = await Document.load('document.docx');
240
+
241
+ // Explicit control
242
+ const doc = await Document.load('document.docx', {
243
+ revisionHandling: 'accept' // Accept all changes (default)
244
+ // OR
245
+ revisionHandling: 'strip' // Remove all revision markup
246
+ // OR
247
+ revisionHandling: 'preserve' // Keep tracked changes (may cause corruption)
248
+ });
249
+ ```
250
+
251
+ **Revision Handling Options:**
252
+ - `'accept'` (default): Removes revision markup, keeps inserted content, removes deleted content
253
+ - `'strip'`: Removes all revision markup completely
254
+ - `'preserve'`: Keeps tracked changes as-is (may cause Word "unreadable content" errors)
255
+
256
+ **Why Accept By Default?**
257
+
258
+ Documents with tracked changes can cause Word corruption errors during round-trip processing due to revision ID conflicts. Accepting changes automatically prevents this issue while preserving document content.
232
259
 
233
260
  **Content Management:**
234
261
 
@@ -64,6 +64,9 @@ export interface DocumentOptions {
64
64
  maxSingleImageSizeMB?: number;
65
65
  logger?: ILogger;
66
66
  }
67
+ export interface DocumentLoadOptions extends DocumentOptions {
68
+ revisionHandling?: 'preserve' | 'accept' | 'strip';
69
+ }
67
70
  type BodyElement = Paragraph | Table | TableOfContentsElement | StructuredDocumentTag;
68
71
  export declare class Document {
69
72
  constructor(zipHandler?: ZipHandler, options?: DocumentOptions, initDefaults?: boolean);
@@ -91,20 +94,26 @@ export declare class Document {
91
94
  private revisionViewSettings;
92
95
  private autoPopulateTOCs;
93
96
  private autoSyncTOCStyles;
97
+ private skipDocumentXmlRegeneration;
98
+ private _originalContentTypes?;
99
+ private _originalStylesXml?;
100
+ private _originalNumberingXml?;
94
101
  private rsidRoot?;
95
102
  private rsids;
96
103
  private documentProtection?;
97
104
  static create(options?: DocumentOptions): Document;
98
- static load(filePath: string, options?: DocumentOptions): Promise<Document>;
99
- static loadFromBuffer(buffer: Buffer, options?: DocumentOptions): Promise<Document>;
105
+ static load(filePath: string, options?: DocumentLoadOptions): Promise<Document>;
106
+ static loadFromBuffer(buffer: Buffer, options?: DocumentLoadOptions): Promise<Document>;
100
107
  private parseDocument;
101
108
  private initializeRequiredFiles;
102
109
  addParagraph(paragraph: Paragraph): this;
103
110
  createParagraph(text?: string): Paragraph;
104
111
  addTable(table: Table): this;
112
+ addStructuredDocumentTag(sdt: StructuredDocumentTag): this;
105
113
  createTable(rows: number, columns: number): Table;
106
114
  getTables(): Table[];
107
115
  getAllParagraphs(): Paragraph[];
116
+ getParagraphs(): Paragraph[];
108
117
  getAllTables(): Table[];
109
118
  getTableOfContentsElements(): TableOfContentsElement[];
110
119
  addBodyElement(element: BodyElement): this;
@@ -370,6 +379,7 @@ export declare class Document {
370
379
  private updateRelationships;
371
380
  private saveComments;
372
381
  private saveCustomProperties;
382
+ private parseContentTypes;
373
383
  private updateContentTypesWithImagesHeadersFootersAndComments;
374
384
  getBookmarkManager(): BookmarkManager;
375
385
  createBookmark(name: string): Bookmark;
@@ -494,6 +504,9 @@ export declare class Document {
494
504
  totalEstimatedMB: number;
495
505
  warning?: string;
496
506
  };
507
+ stripTrackedChanges(): Promise<this>;
508
+ acceptAllRevisions(): Promise<this>;
509
+ private clearRevisionsFromAllParagraphs;
497
510
  dispose(): void;
498
511
  getSizeStats(): {
499
512
  elements: {
@@ -1 +1 @@
1
- {"version":3,"file":"Document.d.ts","sourceRoot":"","sources":["../../src/core/Document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Document.d.ts","sourceRoot":"","sources":["../../src/core/Document.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,8 @@ const NumberingManager_1 = require("../formatting/NumberingManager");
55
55
  const Style_1 = require("../formatting/Style");
56
56
  const StylesManager_1 = require("../formatting/StylesManager");
57
57
  const logger_1 = require("../utils/logger");
58
+ const acceptRevisions_1 = require("../utils/acceptRevisions");
59
+ const stripTrackedChanges_1 = require("../utils/stripTrackedChanges");
58
60
  const XMLParser_1 = require("../xml/XMLParser");
59
61
  const ZipHandler_1 = require("../zip/ZipHandler");
60
62
  const types_1 = require("../zip/types");
@@ -122,6 +124,10 @@ class Document {
122
124
  };
123
125
  autoPopulateTOCs = false;
124
126
  autoSyncTOCStyles = false;
127
+ skipDocumentXmlRegeneration = false;
128
+ _originalContentTypes;
129
+ _originalStylesXml;
130
+ _originalNumberingXml;
125
131
  rsidRoot;
126
132
  rsids = new Set();
127
133
  documentProtection;
@@ -133,14 +139,70 @@ class Document {
133
139
  static async load(filePath, options) {
134
140
  const zipHandler = new ZipHandler_1.ZipHandler();
135
141
  await zipHandler.load(filePath);
142
+ const revisionHandling = options?.revisionHandling ?? 'accept';
143
+ if (revisionHandling === 'accept') {
144
+ await (0, acceptRevisions_1.acceptAllRevisions)(zipHandler);
145
+ }
146
+ else if (revisionHandling === 'strip') {
147
+ await (0, stripTrackedChanges_1.stripTrackedChanges)(zipHandler);
148
+ }
149
+ else if (revisionHandling === 'preserve') {
150
+ const documentXml = zipHandler.getFileAsString('word/document.xml');
151
+ if (documentXml && (documentXml.includes('<w:ins') || documentXml.includes('<w:del') ||
152
+ documentXml.includes('<w:moveFrom') || documentXml.includes('<w:moveTo'))) {
153
+ logger_1.defaultLogger.warn('[Document] Loading document with tracked changes in preserve mode. ' +
154
+ 'This may cause corruption if the document is saved. ' +
155
+ 'Consider using { revisionHandling: "accept" } to prevent corruption.');
156
+ }
157
+ }
136
158
  const doc = new Document(zipHandler, options, false);
159
+ const contentTypesXml = zipHandler.getFileAsString('[Content_Types].xml');
160
+ if (contentTypesXml) {
161
+ doc._originalContentTypes = doc.parseContentTypes(contentTypesXml);
162
+ }
163
+ const stylesXml = zipHandler.getFileAsString(types_1.DOCX_PATHS.STYLES);
164
+ if (stylesXml) {
165
+ doc._originalStylesXml = stylesXml;
166
+ }
167
+ const numberingXml = zipHandler.getFileAsString(types_1.DOCX_PATHS.NUMBERING);
168
+ if (numberingXml) {
169
+ doc._originalNumberingXml = numberingXml;
170
+ }
137
171
  await doc.parseDocument();
138
172
  return doc;
139
173
  }
140
174
  static async loadFromBuffer(buffer, options) {
141
175
  const zipHandler = new ZipHandler_1.ZipHandler();
142
176
  await zipHandler.loadFromBuffer(buffer);
177
+ const revisionHandling = options?.revisionHandling ?? 'accept';
178
+ if (revisionHandling === 'accept') {
179
+ await (0, acceptRevisions_1.acceptAllRevisions)(zipHandler);
180
+ }
181
+ else if (revisionHandling === 'strip') {
182
+ await (0, stripTrackedChanges_1.stripTrackedChanges)(zipHandler);
183
+ }
184
+ else if (revisionHandling === 'preserve') {
185
+ const documentXml = zipHandler.getFileAsString('word/document.xml');
186
+ if (documentXml && (documentXml.includes('<w:ins') || documentXml.includes('<w:del') ||
187
+ documentXml.includes('<w:moveFrom') || documentXml.includes('<w:moveTo'))) {
188
+ logger_1.defaultLogger.warn('[Document] Loading document with tracked changes in preserve mode. ' +
189
+ 'This may cause corruption if the document is saved. ' +
190
+ 'Consider using { revisionHandling: "accept" } to prevent corruption.');
191
+ }
192
+ }
143
193
  const doc = new Document(zipHandler, options, false);
194
+ const contentTypesXml = zipHandler.getFileAsString('[Content_Types].xml');
195
+ if (contentTypesXml) {
196
+ doc._originalContentTypes = doc.parseContentTypes(contentTypesXml);
197
+ }
198
+ const stylesXml = zipHandler.getFileAsString(types_1.DOCX_PATHS.STYLES);
199
+ if (stylesXml) {
200
+ doc._originalStylesXml = stylesXml;
201
+ }
202
+ const numberingXml = zipHandler.getFileAsString(types_1.DOCX_PATHS.NUMBERING);
203
+ if (numberingXml) {
204
+ doc._originalNumberingXml = numberingXml;
205
+ }
144
206
  await doc.parseDocument();
145
207
  return doc;
146
208
  }
@@ -149,6 +211,7 @@ class Document {
149
211
  this.bodyElements = result.bodyElements;
150
212
  this.relationshipManager = result.relationshipManager;
151
213
  this.namespaces = result.namespaces;
214
+ this.properties = result.properties;
152
215
  for (const style of result.styles) {
153
216
  this.stylesManager.addStyle(style);
154
217
  }
@@ -168,6 +231,8 @@ class Document {
168
231
  for (const { footer, relationshipId } of headersFooters.footers) {
169
232
  this.headerFooterManager.registerFooter(footer, relationshipId);
170
233
  }
234
+ this.stylesManager.resetModified();
235
+ this.numberingManager.resetModified();
171
236
  }
172
237
  initializeRequiredFiles() {
173
238
  this.zipHandler.addFile(types_1.DOCX_PATHS.CONTENT_TYPES, this.generator.generateContentTypes());
@@ -205,6 +270,10 @@ class Document {
205
270
  this.bodyElements.push(table);
206
271
  return this;
207
272
  }
273
+ addStructuredDocumentTag(sdt) {
274
+ this.bodyElements.push(sdt);
275
+ return this;
276
+ }
208
277
  createTable(rows, columns) {
209
278
  const table = new Table_1.Table(rows, columns);
210
279
  this.bodyElements.push(table);
@@ -243,6 +312,9 @@ class Document {
243
312
  }
244
313
  return result;
245
314
  }
315
+ getParagraphs() {
316
+ return this.getAllParagraphs();
317
+ }
246
318
  getAllTables() {
247
319
  const result = [];
248
320
  for (const element of this.bodyElements) {
@@ -367,7 +439,9 @@ class Document {
367
439
  }
368
440
  this.clearAllPreserveFlags();
369
441
  this.processHyperlinks();
370
- this.updateDocumentXml();
442
+ if (!this.skipDocumentXmlRegeneration) {
443
+ this.updateDocumentXml();
444
+ }
371
445
  this.updateStylesXml();
372
446
  this.updateNumberingXml();
373
447
  this.updateCoreProps();
@@ -416,7 +490,9 @@ class Document {
416
490
  }
417
491
  this.clearAllPreserveFlags();
418
492
  this.processHyperlinks();
419
- this.updateDocumentXml();
493
+ if (!this.skipDocumentXmlRegeneration) {
494
+ this.updateDocumentXml();
495
+ }
420
496
  this.updateStylesXml();
421
497
  this.updateNumberingXml();
422
498
  this.updateCoreProps();
@@ -456,12 +532,22 @@ class Document {
456
532
  this.zipHandler.updateFile(types_1.DOCX_PATHS.APP_PROPS, xml);
457
533
  }
458
534
  updateStylesXml() {
459
- const xml = this.stylesManager.generateStylesXml();
460
- this.zipHandler.updateFile(types_1.DOCX_PATHS.STYLES, xml);
535
+ if (this._originalStylesXml && !this.stylesManager.isModified()) {
536
+ this.zipHandler.updateFile(types_1.DOCX_PATHS.STYLES, this._originalStylesXml);
537
+ }
538
+ else {
539
+ const xml = this.stylesManager.generateStylesXml();
540
+ this.zipHandler.updateFile(types_1.DOCX_PATHS.STYLES, xml);
541
+ }
461
542
  }
462
543
  updateNumberingXml() {
463
- const xml = this.numberingManager.generateNumberingXml();
464
- this.zipHandler.updateFile(types_1.DOCX_PATHS.NUMBERING, xml);
544
+ if (this._originalNumberingXml && !this.numberingManager.isModified()) {
545
+ this.zipHandler.updateFile(types_1.DOCX_PATHS.NUMBERING, this._originalNumberingXml);
546
+ }
547
+ else {
548
+ const xml = this.numberingManager.generateNumberingXml();
549
+ this.zipHandler.updateFile(types_1.DOCX_PATHS.NUMBERING, xml);
550
+ }
465
551
  }
466
552
  getStylesManager() {
467
553
  return this.stylesManager;
@@ -1766,6 +1852,9 @@ class Document {
1766
1852
  continue;
1767
1853
  }
1768
1854
  const para = element;
1855
+ if (para.isPreserved()) {
1856
+ continue;
1857
+ }
1769
1858
  const isBlank = this.isParagraphBlank(para);
1770
1859
  if (isBlank) {
1771
1860
  indicesToRemove.push(i);
@@ -3228,10 +3317,23 @@ class Document {
3228
3317
  }
3229
3318
  }
3230
3319
  }
3320
+ parseContentTypes(xml) {
3321
+ const defaults = new Set();
3322
+ const overrides = new Set();
3323
+ const defaultMatches = xml.matchAll(/<Default\s+Extension="([^"]+)"\s+ContentType="([^"]+)"\s*\/>/g);
3324
+ for (const match of defaultMatches) {
3325
+ defaults.add(`${match[1]}|${match[2]}`);
3326
+ }
3327
+ const overrideMatches = xml.matchAll(/<Override\s+PartName="([^"]+)"\s+ContentType="([^"]+)"\s*\/>/g);
3328
+ for (const match of overrideMatches) {
3329
+ overrides.add(`${match[1]}|${match[2]}`);
3330
+ }
3331
+ return { defaults, overrides };
3332
+ }
3231
3333
  updateContentTypesWithImagesHeadersFootersAndComments() {
3232
3334
  const hasCustomProps = this.properties.customProperties &&
3233
3335
  Object.keys(this.properties.customProperties).length > 0;
3234
- const contentTypes = this.generator.generateContentTypesWithImagesHeadersFootersAndComments(this.imageManager, this.headerFooterManager, this.commentManager, this.zipHandler, undefined, hasCustomProps);
3336
+ const contentTypes = this.generator.generateContentTypesWithImagesHeadersFootersAndComments(this.imageManager, this.headerFooterManager, this.commentManager, this.zipHandler, undefined, hasCustomProps, this._originalContentTypes);
3235
3337
  this.zipHandler.updateFile(types_1.DOCX_PATHS.CONTENT_TYPES, contentTypes);
3236
3338
  }
3237
3339
  getBookmarkManager() {
@@ -3573,6 +3675,42 @@ class Document {
3573
3675
  estimateSize() {
3574
3676
  return this.validator.estimateSize(this.bodyElements, this.imageManager);
3575
3677
  }
3678
+ async stripTrackedChanges() {
3679
+ return this.acceptAllRevisions();
3680
+ }
3681
+ async acceptAllRevisions() {
3682
+ const { acceptAllRevisions } = await Promise.resolve().then(() => __importStar(require('../utils/acceptRevisions')));
3683
+ await acceptAllRevisions(this.zipHandler);
3684
+ this.clearRevisionsFromAllParagraphs();
3685
+ this.skipDocumentXmlRegeneration = true;
3686
+ return this;
3687
+ }
3688
+ clearRevisionsFromAllParagraphs() {
3689
+ let clearedCount = 0;
3690
+ for (const para of this.getAllParagraphs()) {
3691
+ const revisions = para.getRevisions();
3692
+ if (revisions.length > 0) {
3693
+ const content = para.getContent();
3694
+ const nonRevisionContent = content.filter(item => !(item instanceof Revision_1.Revision));
3695
+ para.clearContent();
3696
+ for (const item of nonRevisionContent) {
3697
+ if (item instanceof Run_1.Run || item instanceof ImageRun_1.ImageRun) {
3698
+ para.addRun(item);
3699
+ }
3700
+ else if (item instanceof Hyperlink_1.Hyperlink) {
3701
+ para.addHyperlink(item);
3702
+ }
3703
+ else if (item.constructor.name === 'Field') {
3704
+ para.addField(item);
3705
+ }
3706
+ }
3707
+ clearedCount += revisions.length;
3708
+ }
3709
+ }
3710
+ if (clearedCount > 0) {
3711
+ this.logger.info(`Cleared ${clearedCount} Revision object(s) from in-memory document model`);
3712
+ }
3713
+ }
3576
3714
  dispose() {
3577
3715
  this.bodyElements = [];
3578
3716
  this.parser.clearParseErrors();
@@ -3825,11 +3963,13 @@ class Document {
3825
3963
  const caseSensitive = options?.caseSensitive ?? false;
3826
3964
  const wholeWord = options?.wholeWord ?? false;
3827
3965
  const searchText = caseSensitive ? text : text.toLowerCase();
3966
+ const searchedParagraphs = new Set();
3828
3967
  const paragraphs = this.getAllParagraphs();
3829
3968
  for (let pIndex = 0; pIndex < paragraphs.length; pIndex++) {
3830
3969
  const paragraph = paragraphs[pIndex];
3831
3970
  if (!paragraph)
3832
3971
  continue;
3972
+ searchedParagraphs.add(paragraph);
3833
3973
  const runs = paragraph.getRuns();
3834
3974
  for (let rIndex = 0; rIndex < runs.length; rIndex++) {
3835
3975
  const run = runs[rIndex];
@@ -3876,6 +4016,10 @@ class Document {
3876
4016
  const paragraph = cellParagraphs[pIndex];
3877
4017
  if (!paragraph)
3878
4018
  continue;
4019
+ if (searchedParagraphs.has(paragraph)) {
4020
+ continue;
4021
+ }
4022
+ searchedParagraphs.add(paragraph);
3879
4023
  const runs = paragraph.getRuns();
3880
4024
  for (let rIndex = 0; rIndex < runs.length; rIndex++) {
3881
4025
  const run = runs[rIndex];
@@ -3995,8 +4139,10 @@ class Document {
3995
4139
  }
3996
4140
  getWordCount() {
3997
4141
  let totalWords = 0;
4142
+ const countedParagraphs = new Set();
3998
4143
  const paragraphs = this.getAllParagraphs();
3999
4144
  for (const paragraph of paragraphs) {
4145
+ countedParagraphs.add(paragraph);
4000
4146
  const text = paragraph.getText().trim();
4001
4147
  if (text) {
4002
4148
  const words = text.split(/\s+/).filter((word) => word.length > 0);
@@ -4011,6 +4157,10 @@ class Document {
4011
4157
  for (const cell of cells) {
4012
4158
  const cellParas = cell.getParagraphs();
4013
4159
  for (const para of cellParas) {
4160
+ if (countedParagraphs.has(para)) {
4161
+ continue;
4162
+ }
4163
+ countedParagraphs.add(para);
4014
4164
  const text = para.getText().trim();
4015
4165
  if (text) {
4016
4166
  const words = text.split(/\s+/).filter((word) => word.length > 0);
@@ -4024,8 +4174,10 @@ class Document {
4024
4174
  }
4025
4175
  getCharacterCount(includeSpaces = true) {
4026
4176
  let totalChars = 0;
4177
+ const countedParagraphs = new Set();
4027
4178
  const paragraphs = this.getAllParagraphs();
4028
4179
  for (const paragraph of paragraphs) {
4180
+ countedParagraphs.add(paragraph);
4029
4181
  const text = paragraph.getText();
4030
4182
  if (includeSpaces) {
4031
4183
  totalChars += text.length;
@@ -4042,6 +4194,10 @@ class Document {
4042
4194
  for (const cell of cells) {
4043
4195
  const cellParas = cell.getParagraphs();
4044
4196
  for (const para of cellParas) {
4197
+ if (countedParagraphs.has(para)) {
4198
+ continue;
4199
+ }
4200
+ countedParagraphs.add(para);
4045
4201
  const text = para.getText();
4046
4202
  if (includeSpaces) {
4047
4203
  totalChars += text.length;