docxmlater 0.28.1 → 0.29.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 (97) hide show
  1. package/README.md +330 -4
  2. package/dist/core/Document.d.ts +66 -28
  3. package/dist/core/Document.d.ts.map +1 -1
  4. package/dist/core/Document.js +590 -90
  5. package/dist/core/Document.js.map +1 -1
  6. package/dist/core/DocumentGenerator.d.ts +15 -13
  7. package/dist/core/DocumentGenerator.d.ts.map +1 -1
  8. package/dist/core/DocumentGenerator.js +74 -13
  9. package/dist/core/DocumentGenerator.js.map +1 -1
  10. package/dist/core/DocumentParser.d.ts +40 -13
  11. package/dist/core/DocumentParser.d.ts.map +1 -1
  12. package/dist/core/DocumentParser.js +800 -316
  13. package/dist/core/DocumentParser.js.map +1 -1
  14. package/dist/core/DocumentValidator.d.ts +2 -1
  15. package/dist/core/DocumentValidator.d.ts.map +1 -1
  16. package/dist/core/DocumentValidator.js.map +1 -1
  17. package/dist/elements/Bookmark.d.ts +1 -0
  18. package/dist/elements/Bookmark.d.ts.map +1 -1
  19. package/dist/elements/Bookmark.js +1 -1
  20. package/dist/elements/Bookmark.js.map +1 -1
  21. package/dist/elements/Hyperlink.d.ts +1 -0
  22. package/dist/elements/Hyperlink.d.ts.map +1 -1
  23. package/dist/elements/Hyperlink.js +23 -0
  24. package/dist/elements/Hyperlink.js.map +1 -1
  25. package/dist/elements/ImageManager.d.ts +2 -0
  26. package/dist/elements/ImageManager.d.ts.map +1 -1
  27. package/dist/elements/ImageManager.js +22 -0
  28. package/dist/elements/ImageManager.js.map +1 -1
  29. package/dist/elements/ImageRun.d.ts +10 -0
  30. package/dist/elements/ImageRun.d.ts.map +1 -0
  31. package/dist/elements/ImageRun.js +23 -0
  32. package/dist/elements/ImageRun.js.map +1 -0
  33. package/dist/elements/Paragraph.d.ts +16 -1
  34. package/dist/elements/Paragraph.d.ts.map +1 -1
  35. package/dist/elements/Paragraph.js +146 -2
  36. package/dist/elements/Paragraph.js.map +1 -1
  37. package/dist/elements/Run.d.ts +4 -0
  38. package/dist/elements/Run.d.ts.map +1 -1
  39. package/dist/elements/Run.js +27 -1
  40. package/dist/elements/Run.js.map +1 -1
  41. package/dist/elements/Section.d.ts.map +1 -1
  42. package/dist/elements/Section.js +3 -8
  43. package/dist/elements/Section.js.map +1 -1
  44. package/dist/elements/StructuredDocumentTag.d.ts +32 -0
  45. package/dist/elements/StructuredDocumentTag.d.ts.map +1 -0
  46. package/dist/elements/StructuredDocumentTag.js +94 -0
  47. package/dist/elements/StructuredDocumentTag.js.map +1 -0
  48. package/dist/elements/Table.d.ts +24 -0
  49. package/dist/elements/Table.d.ts.map +1 -1
  50. package/dist/elements/Table.js +177 -3
  51. package/dist/elements/Table.js.map +1 -1
  52. package/dist/elements/TableOfContents.d.ts +33 -0
  53. package/dist/elements/TableOfContents.d.ts.map +1 -1
  54. package/dist/elements/TableOfContents.js +129 -1
  55. package/dist/elements/TableOfContents.js.map +1 -1
  56. package/dist/formatting/AbstractNumbering.d.ts +1 -0
  57. package/dist/formatting/AbstractNumbering.d.ts.map +1 -1
  58. package/dist/formatting/AbstractNumbering.js +30 -0
  59. package/dist/formatting/AbstractNumbering.js.map +1 -1
  60. package/dist/formatting/NumberingInstance.d.ts +1 -0
  61. package/dist/formatting/NumberingInstance.d.ts.map +1 -1
  62. package/dist/formatting/NumberingInstance.js +16 -0
  63. package/dist/formatting/NumberingInstance.js.map +1 -1
  64. package/dist/formatting/NumberingLevel.d.ts +1 -0
  65. package/dist/formatting/NumberingLevel.d.ts.map +1 -1
  66. package/dist/formatting/NumberingLevel.js +59 -0
  67. package/dist/formatting/NumberingLevel.js.map +1 -1
  68. package/dist/formatting/NumberingManager.d.ts +11 -0
  69. package/dist/formatting/NumberingManager.d.ts.map +1 -1
  70. package/dist/formatting/NumberingManager.js +92 -0
  71. package/dist/formatting/NumberingManager.js.map +1 -1
  72. package/dist/formatting/Style.d.ts +2 -0
  73. package/dist/formatting/Style.d.ts.map +1 -1
  74. package/dist/formatting/Style.js +49 -0
  75. package/dist/formatting/Style.js.map +1 -1
  76. package/dist/index.d.ts +2 -0
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +6 -2
  79. package/dist/index.js.map +1 -1
  80. package/dist/xml/XMLBuilder.d.ts +4 -1
  81. package/dist/xml/XMLBuilder.d.ts.map +1 -1
  82. package/dist/xml/XMLBuilder.js +134 -31
  83. package/dist/xml/XMLBuilder.js.map +1 -1
  84. package/dist/xml/XMLParser.d.ts +1 -0
  85. package/dist/xml/XMLParser.d.ts.map +1 -1
  86. package/dist/xml/XMLParser.js +75 -42
  87. package/dist/xml/XMLParser.js.map +1 -1
  88. package/dist/zip/ZipHandler.d.ts.map +1 -1
  89. package/dist/zip/ZipHandler.js +6 -1
  90. package/dist/zip/ZipHandler.js.map +1 -1
  91. package/dist/zip/ZipReader.d.ts.map +1 -1
  92. package/dist/zip/ZipReader.js +2 -2
  93. package/dist/zip/ZipReader.js.map +1 -1
  94. package/dist/zip/ZipWriter.d.ts.map +1 -1
  95. package/dist/zip/ZipWriter.js +13 -8
  96. package/dist/zip/ZipWriter.js.map +1 -1
  97. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/elements/Table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/elements/Table.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,9 @@ class Table {
8
8
  rows = [];
9
9
  formatting;
10
10
  constructor(rows, columns, formatting = {}) {
11
+ if (formatting.width === undefined) {
12
+ formatting.width = 9360;
13
+ }
11
14
  this.formatting = formatting;
12
15
  if (rows !== undefined && rows > 0 && columns !== undefined && columns > 0) {
13
16
  for (let i = 0; i < rows; i++) {
@@ -64,6 +67,56 @@ class Table {
64
67
  };
65
68
  return this;
66
69
  }
70
+ setFirstRowShading(color) {
71
+ if (this.rows.length > 0) {
72
+ const firstRow = this.rows[0];
73
+ if (firstRow) {
74
+ for (const cell of firstRow.getCells()) {
75
+ cell.setShading({ fill: color });
76
+ }
77
+ }
78
+ }
79
+ return this;
80
+ }
81
+ setFirstRowFormatting(options) {
82
+ if (this.rows.length === 0) {
83
+ return this;
84
+ }
85
+ const firstRow = this.rows[0];
86
+ if (!firstRow) {
87
+ return this;
88
+ }
89
+ for (const cell of firstRow.getCells()) {
90
+ const paragraphs = cell.getParagraphs();
91
+ if (options.shading) {
92
+ cell.setShading({ fill: options.shading });
93
+ }
94
+ for (const para of paragraphs) {
95
+ if (options.alignment) {
96
+ para.setAlignment(options.alignment);
97
+ }
98
+ if (options.spacingBefore !== undefined) {
99
+ para.setSpaceBefore(options.spacingBefore);
100
+ }
101
+ if (options.spacingAfter !== undefined) {
102
+ para.setSpaceAfter(options.spacingAfter);
103
+ }
104
+ const runs = para.getRuns();
105
+ for (const run of runs) {
106
+ if (options.bold !== undefined) {
107
+ run.setBold(options.bold);
108
+ }
109
+ if (options.italic !== undefined) {
110
+ run.setItalic(options.italic);
111
+ }
112
+ if (options.underline !== undefined) {
113
+ run.setUnderline(options.underline);
114
+ }
115
+ }
116
+ }
117
+ }
118
+ return this;
119
+ }
67
120
  setCellSpacing(twips) {
68
121
  this.formatting.cellSpacing = twips;
69
122
  return this;
@@ -72,11 +125,22 @@ class Table {
72
125
  this.formatting.indent = twips;
73
126
  return this;
74
127
  }
128
+ setStyle(style) {
129
+ this.formatting.style = style;
130
+ return this;
131
+ }
132
+ setTblLook(tblLook) {
133
+ this.formatting.tblLook = tblLook;
134
+ return this;
135
+ }
75
136
  getFormatting() {
76
137
  return { ...this.formatting };
77
138
  }
78
139
  toXML() {
79
140
  const tblPrChildren = [];
141
+ if (this.formatting.style) {
142
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblStyle', { 'w:val': this.formatting.style }));
143
+ }
80
144
  if (this.formatting.width !== undefined) {
81
145
  tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblW', {
82
146
  'w:w': this.formatting.width,
@@ -126,6 +190,9 @@ class Table {
126
190
  'w:type': 'dxa',
127
191
  }));
128
192
  }
193
+ if (this.formatting.tblLook) {
194
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblLook', { 'w:val': this.formatting.tblLook }));
195
+ }
129
196
  const tableChildren = [];
130
197
  tableChildren.push(XMLBuilder_1.XMLBuilder.w('tblPr', undefined, tblPrChildren));
131
198
  const maxColumns = Math.max(...this.rows.map(row => row.getCellCount()), 0);
@@ -152,12 +219,15 @@ class Table {
152
219
  const attrs = {
153
220
  'w:val': border.style || 'single',
154
221
  };
155
- if (border.size !== undefined) {
156
- attrs['w:sz'] = border.size;
157
- }
158
222
  if (border.color) {
159
223
  attrs['w:color'] = border.color;
160
224
  }
225
+ if (border.space !== undefined) {
226
+ attrs['w:space'] = border.space;
227
+ }
228
+ if (border.size !== undefined) {
229
+ attrs['w:sz'] = border.size;
230
+ }
161
231
  return XMLBuilder_1.XMLBuilder.wSelf(side, attrs);
162
232
  }
163
233
  removeRow(index) {
@@ -221,6 +291,110 @@ class Table {
221
291
  static create(rows, columns, formatting) {
222
292
  return new Table(rows, columns, formatting);
223
293
  }
294
+ mergeCells(startRow, startCol, endRow, endCol) {
295
+ if (startRow < 0 || endRow >= this.rows.length || startCol < 0 || endCol < 0) {
296
+ return this;
297
+ }
298
+ const cell = this.getCell(startRow, startCol);
299
+ if (!cell) {
300
+ return this;
301
+ }
302
+ if (endCol > startCol) {
303
+ cell.setColumnSpan(endCol - startCol + 1);
304
+ }
305
+ return this;
306
+ }
307
+ splitCell(row, col) {
308
+ const cell = this.getCell(row, col);
309
+ if (cell) {
310
+ cell.setColumnSpan(1);
311
+ }
312
+ return this;
313
+ }
314
+ moveCell(fromRow, fromCol, toRow, toCol) {
315
+ const fromCell = this.getCell(fromRow, fromCol);
316
+ const toCell = this.getCell(toRow, toCol);
317
+ if (!fromCell || !toCell) {
318
+ return this;
319
+ }
320
+ const paragraphs = fromCell.getParagraphs();
321
+ for (const para of paragraphs) {
322
+ toCell.addParagraph(para);
323
+ }
324
+ const formatting = fromCell.getFormatting();
325
+ if (formatting.shading)
326
+ toCell.setShading(formatting.shading);
327
+ if (formatting.borders)
328
+ toCell.setBorders(formatting.borders);
329
+ if (formatting.width)
330
+ toCell.setWidth(formatting.width);
331
+ if (formatting.verticalAlignment)
332
+ toCell.setVerticalAlignment(formatting.verticalAlignment);
333
+ const row = this.getRow(fromRow);
334
+ if (row) {
335
+ const cells = row.getCells();
336
+ cells[fromCol] = new TableCell_1.TableCell();
337
+ }
338
+ return this;
339
+ }
340
+ swapCells(row1, col1, row2, col2) {
341
+ const row1Obj = this.getRow(row1);
342
+ const row2Obj = this.getRow(row2);
343
+ if (!row1Obj || !row2Obj) {
344
+ return this;
345
+ }
346
+ const cells1 = row1Obj.getCells();
347
+ const cells2 = row2Obj.getCells();
348
+ if (col1 >= cells1.length || col2 >= cells2.length) {
349
+ return this;
350
+ }
351
+ const temp = cells1[col1];
352
+ cells1[col1] = cells2[col2];
353
+ cells2[col2] = temp;
354
+ return this;
355
+ }
356
+ setColumnWidth(columnIndex, width) {
357
+ const columnWidths = this.formatting.columnWidths || [];
358
+ columnWidths[columnIndex] = width;
359
+ this.formatting.columnWidths = columnWidths;
360
+ return this;
361
+ }
362
+ insertRows(startIndex, count) {
363
+ const insertedRows = [];
364
+ const columnCount = this.getColumnCount();
365
+ for (let i = 0; i < count; i++) {
366
+ const row = new TableRow_1.TableRow(columnCount);
367
+ this.insertRow(startIndex + i, row);
368
+ insertedRows.push(row);
369
+ }
370
+ return insertedRows;
371
+ }
372
+ removeRows(startIndex, count) {
373
+ if (startIndex < 0 || startIndex >= this.rows.length || count <= 0) {
374
+ return false;
375
+ }
376
+ const actualCount = Math.min(count, this.rows.length - startIndex);
377
+ this.rows.splice(startIndex, actualCount);
378
+ return actualCount > 0;
379
+ }
380
+ clone() {
381
+ const clonedFormatting = JSON.parse(JSON.stringify(this.formatting));
382
+ const clonedTable = new Table(0, 0, clonedFormatting);
383
+ for (const row of this.rows) {
384
+ const cells = row.getCells();
385
+ const clonedRow = new TableRow_1.TableRow(0);
386
+ for (const cell of cells) {
387
+ const cellFormatting = cell.getFormatting();
388
+ const clonedCell = new TableCell_1.TableCell(JSON.parse(JSON.stringify(cellFormatting)));
389
+ for (const para of cell.getParagraphs()) {
390
+ clonedCell.addParagraph(para.clone());
391
+ }
392
+ clonedRow.addCell(clonedCell);
393
+ }
394
+ clonedTable.addRow(clonedRow);
395
+ }
396
+ return clonedTable;
397
+ }
224
398
  }
225
399
  exports.Table = Table;
226
400
  //# sourceMappingURL=Table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/elements/Table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/elements/Table.ts"],"names":[],"mappings":"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"}
@@ -2,20 +2,34 @@ import { XMLElement } from '../xml/XMLBuilder';
2
2
  export interface TOCProperties {
3
3
  title?: string;
4
4
  levels?: number;
5
+ includeStyles?: string[];
5
6
  showPageNumbers?: boolean;
6
7
  rightAlignPageNumbers?: boolean;
7
8
  useHyperlinks?: boolean;
8
9
  style?: string;
9
10
  tabLeader?: 'dot' | 'hyphen' | 'underscore' | 'none';
10
11
  fieldSwitches?: string;
12
+ numbered?: boolean;
13
+ numberingFormat?: 'decimal' | 'roman' | 'alpha';
14
+ noIndent?: boolean;
15
+ customIndents?: number[];
16
+ spaceBetweenEntries?: number;
17
+ hyperlinkColor?: string;
11
18
  }
12
19
  export declare class TableOfContents {
13
20
  private title;
14
21
  private levels;
22
+ private includeStyles?;
15
23
  private showPageNumbers;
16
24
  private useHyperlinks;
17
25
  private tabLeader;
18
26
  private fieldSwitches?;
27
+ private numbered;
28
+ private numberingFormat;
29
+ private noIndent;
30
+ private customIndents?;
31
+ private spaceBetweenEntries;
32
+ private hyperlinkColor;
19
33
  constructor(properties?: TOCProperties);
20
34
  getTitle(): string;
21
35
  setTitle(title: string): this;
@@ -25,6 +39,13 @@ export declare class TableOfContents {
25
39
  setShowPageNumbers(show: boolean): this;
26
40
  getUseHyperlinks(): boolean;
27
41
  setUseHyperlinks(use: boolean): this;
42
+ getNumbered(): boolean;
43
+ getNumberingFormat(): 'decimal' | 'roman' | 'alpha';
44
+ getNoIndent(): boolean;
45
+ getCustomIndents(): number[] | undefined;
46
+ getSpaceBetweenEntries(): number;
47
+ getHyperlinkColor(): string;
48
+ getIncludeStyles(): string[] | undefined;
28
49
  private buildFieldInstruction;
29
50
  toXML(): XMLElement[];
30
51
  static createStandard(title?: string): TableOfContents;
@@ -32,5 +53,17 @@ export declare class TableOfContents {
32
53
  static createDetailed(title?: string): TableOfContents;
33
54
  static createHyperlinked(title?: string): TableOfContents;
34
55
  static create(properties?: TOCProperties): TableOfContents;
56
+ setIncludeStyles(styles: string[]): this;
57
+ setNumbered(numbered: boolean, format?: 'decimal' | 'roman' | 'alpha'): this;
58
+ setNoIndent(noIndent: boolean): this;
59
+ setCustomIndents(indents: number[]): this;
60
+ setSpaceBetweenEntries(spacing: number): this;
61
+ setHyperlinkColor(color: string): this;
62
+ configure(options: Partial<TOCProperties>): this;
63
+ static createWithStyles(styles: string[], options?: Partial<TOCProperties>): TableOfContents;
64
+ static createFlat(title?: string, styles?: string[]): TableOfContents;
65
+ static createNumbered(title?: string, format?: 'decimal' | 'roman' | 'alpha'): TableOfContents;
66
+ static createWithSpacing(spaceBetweenEntries: number, options?: Partial<TOCProperties>): TableOfContents;
67
+ static createWithHyperlinkColor(color: string, options?: Partial<TOCProperties>): TableOfContents;
35
68
  }
36
69
  //# sourceMappingURL=TableOfContents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableOfContents.d.ts","sourceRoot":"","sources":["../../src/elements/TableOfContents.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,MAAM,WAAW,aAAa;IAE5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC;IAErD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,SAAS,CAA2C;IAC5D,OAAO,CAAC,aAAa,CAAC,CAAS;gBAMnB,UAAU,GAAE,aAAkB;IAe1C,QAAQ,IAAI,MAAM;IAOlB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ7B,SAAS,IAAI,MAAM;IAOnB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAW/B,kBAAkB,IAAI,OAAO;IAO7B,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAQvC,gBAAgB,IAAI,OAAO;IAO3B,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAQpC,OAAO,CAAC,qBAAqB;IAmD7B,KAAK,IAAI,UAAU,EAAE;IA2HrB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe;IAYtD,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe;IAYpD,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe;IAYtD,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe;IAYzD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,aAAa,GAAG,eAAe;CAG3D"}
1
+ {"version":3,"file":"TableOfContents.d.ts","sourceRoot":"","sources":["../../src/elements/TableOfContents.ts"],"names":[],"mappings":"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"}
@@ -4,17 +4,31 @@ exports.TableOfContents = void 0;
4
4
  class TableOfContents {
5
5
  title;
6
6
  levels;
7
+ includeStyles;
7
8
  showPageNumbers;
8
9
  useHyperlinks;
9
10
  tabLeader;
10
11
  fieldSwitches;
12
+ numbered;
13
+ numberingFormat;
14
+ noIndent;
15
+ customIndents;
16
+ spaceBetweenEntries;
17
+ hyperlinkColor;
11
18
  constructor(properties = {}) {
12
19
  this.title = properties.title || 'Table of Contents';
13
20
  this.levels = properties.levels || 3;
21
+ this.includeStyles = properties.includeStyles;
14
22
  this.showPageNumbers = properties.showPageNumbers !== false;
15
23
  this.useHyperlinks = properties.useHyperlinks || false;
16
24
  this.tabLeader = properties.tabLeader || 'dot';
17
25
  this.fieldSwitches = properties.fieldSwitches;
26
+ this.numbered = properties.numbered || false;
27
+ this.numberingFormat = properties.numberingFormat || 'decimal';
28
+ this.noIndent = properties.noIndent || false;
29
+ this.customIndents = properties.customIndents;
30
+ this.spaceBetweenEntries = properties.spaceBetweenEntries || 0;
31
+ this.hyperlinkColor = properties.hyperlinkColor || '0000FF';
18
32
  }
19
33
  getTitle() {
20
34
  return this.title;
@@ -47,9 +61,36 @@ class TableOfContents {
47
61
  this.useHyperlinks = use;
48
62
  return this;
49
63
  }
64
+ getNumbered() {
65
+ return this.numbered;
66
+ }
67
+ getNumberingFormat() {
68
+ return this.numberingFormat;
69
+ }
70
+ getNoIndent() {
71
+ return this.noIndent;
72
+ }
73
+ getCustomIndents() {
74
+ return this.customIndents;
75
+ }
76
+ getSpaceBetweenEntries() {
77
+ return this.spaceBetweenEntries;
78
+ }
79
+ getHyperlinkColor() {
80
+ return this.hyperlinkColor;
81
+ }
82
+ getIncludeStyles() {
83
+ return this.includeStyles;
84
+ }
50
85
  buildFieldInstruction() {
51
86
  let instruction = 'TOC';
52
- instruction += ` \\o "1-${this.levels}"`;
87
+ if (this.includeStyles && this.includeStyles.length > 0) {
88
+ const stylesString = this.includeStyles.map(s => `"${s}",1`).join(' ');
89
+ instruction += ` \\t ${stylesString}`;
90
+ }
91
+ else {
92
+ instruction += ` \\o "1-${this.levels}"`;
93
+ }
53
94
  if (this.useHyperlinks) {
54
95
  instruction += ' \\h';
55
96
  }
@@ -203,6 +244,93 @@ class TableOfContents {
203
244
  static create(properties) {
204
245
  return new TableOfContents(properties);
205
246
  }
247
+ setIncludeStyles(styles) {
248
+ this.includeStyles = styles;
249
+ return this;
250
+ }
251
+ setNumbered(numbered, format = 'decimal') {
252
+ this.numbered = numbered;
253
+ this.numberingFormat = format;
254
+ return this;
255
+ }
256
+ setNoIndent(noIndent) {
257
+ this.noIndent = noIndent;
258
+ return this;
259
+ }
260
+ setCustomIndents(indents) {
261
+ this.customIndents = indents;
262
+ return this;
263
+ }
264
+ setSpaceBetweenEntries(spacing) {
265
+ this.spaceBetweenEntries = spacing;
266
+ return this;
267
+ }
268
+ setHyperlinkColor(color) {
269
+ this.hyperlinkColor = color;
270
+ return this;
271
+ }
272
+ configure(options) {
273
+ if (options.title !== undefined)
274
+ this.title = options.title;
275
+ if (options.levels !== undefined)
276
+ this.levels = options.levels;
277
+ if (options.includeStyles !== undefined)
278
+ this.includeStyles = options.includeStyles;
279
+ if (options.showPageNumbers !== undefined)
280
+ this.showPageNumbers = options.showPageNumbers;
281
+ if (options.useHyperlinks !== undefined)
282
+ this.useHyperlinks = options.useHyperlinks;
283
+ if (options.tabLeader !== undefined)
284
+ this.tabLeader = options.tabLeader;
285
+ if (options.fieldSwitches !== undefined)
286
+ this.fieldSwitches = options.fieldSwitches;
287
+ if (options.numbered !== undefined)
288
+ this.numbered = options.numbered;
289
+ if (options.numberingFormat !== undefined)
290
+ this.numberingFormat = options.numberingFormat;
291
+ if (options.noIndent !== undefined)
292
+ this.noIndent = options.noIndent;
293
+ if (options.customIndents !== undefined)
294
+ this.customIndents = options.customIndents;
295
+ if (options.spaceBetweenEntries !== undefined)
296
+ this.spaceBetweenEntries = options.spaceBetweenEntries;
297
+ if (options.hyperlinkColor !== undefined)
298
+ this.hyperlinkColor = options.hyperlinkColor;
299
+ return this;
300
+ }
301
+ static createWithStyles(styles, options) {
302
+ return new TableOfContents({
303
+ ...options,
304
+ includeStyles: styles,
305
+ });
306
+ }
307
+ static createFlat(title, styles) {
308
+ return new TableOfContents({
309
+ title: title || 'Contents',
310
+ includeStyles: styles,
311
+ noIndent: true,
312
+ spaceBetweenEntries: 100,
313
+ });
314
+ }
315
+ static createNumbered(title, format = 'decimal') {
316
+ return new TableOfContents({
317
+ title: title || 'Table of Contents',
318
+ numbered: true,
319
+ numberingFormat: format,
320
+ });
321
+ }
322
+ static createWithSpacing(spaceBetweenEntries, options) {
323
+ return new TableOfContents({
324
+ ...options,
325
+ spaceBetweenEntries,
326
+ });
327
+ }
328
+ static createWithHyperlinkColor(color, options) {
329
+ return new TableOfContents({
330
+ ...options,
331
+ hyperlinkColor: color,
332
+ });
333
+ }
206
334
  }
207
335
  exports.TableOfContents = TableOfContents;
208
336
  //# sourceMappingURL=TableOfContents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableOfContents.js","sourceRoot":"","sources":["../../src/elements/TableOfContents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableOfContents.js","sourceRoot":"","sources":["../../src/elements/TableOfContents.ts"],"names":[],"mappings":"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"}
@@ -33,5 +33,6 @@ export declare class AbstractNumbering {
33
33
  static createMultiLevelList(abstractNumId: number): AbstractNumbering;
34
34
  static createOutlineList(abstractNumId: number): AbstractNumbering;
35
35
  static create(properties: AbstractNumberingProperties): AbstractNumbering;
36
+ static fromXML(xml: string): AbstractNumbering;
36
37
  }
37
38
  //# sourceMappingURL=AbstractNumbering.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractNumbering.d.ts","sourceRoot":"","sources":["../../src/formatting/AbstractNumbering.ts"],"names":[],"mappings":"AAQA,OAAO,EAAc,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,MAAM,WAAW,2BAA2B;IAE1C,aAAa,EAAE,MAAM,CAAC;IAGtB,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAG1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAQD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,cAAc,CAAS;gBAOnB,SAAS,EAAE,MAAM,GAAG,2BAA2B,EAAE,IAAI,CAAC,EAAE,MAAM;IA6B1E,OAAO,CAAC,QAAQ;IAahB,gBAAgB,IAAI,MAAM;IAO1B,KAAK,IAAI,MAAM;IAOf,OAAO,IAAI,MAAM,GAAG,SAAS;IAQ7B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ3B,iBAAiB,IAAI,MAAM;IAc3B,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,kBAAkB,GAAG,IAAI;IAehF,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAerC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IASzC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAOxD,YAAY,IAAI,cAAc,EAAE;IAOhC,SAAS,IAAI,cAAc,EAAE;IAO7B,aAAa,IAAI,MAAM;IAQvB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAQrC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAOxC,KAAK,IAAI,UAAU;IA8CnB,MAAM,CAAC,gBAAgB,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,MAAU,EAClB,OAAO,GAAE,MAAM,EAAoB,GAClC,iBAAiB;IAqBpB,MAAM,CAAC,kBAAkB,CACvB,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,MAAU,EAClB,OAAO,GAAE,KAAK,CAAC,SAAS,GAAG,aAAa,GAAG,YAAY,CAA4C,GAClG,iBAAiB;IAmCpB,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB;IA0BrE,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB;IAyClE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,2BAA2B,GAAG,iBAAiB;CAG1E"}
1
+ {"version":3,"file":"AbstractNumbering.d.ts","sourceRoot":"","sources":["../../src/formatting/AbstractNumbering.ts"],"names":[],"mappings":"AAQA,OAAO,EAAc,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAKlD,MAAM,WAAW,2BAA2B;IAE1C,aAAa,EAAE,MAAM,CAAC;IAGtB,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAG1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAQD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,cAAc,CAAS;gBAOnB,SAAS,EAAE,MAAM,GAAG,2BAA2B,EAAE,IAAI,CAAC,EAAE,MAAM;IA6B1E,OAAO,CAAC,QAAQ;IAahB,gBAAgB,IAAI,MAAM;IAO1B,KAAK,IAAI,MAAM;IAOf,OAAO,IAAI,MAAM,GAAG,SAAS;IAQ7B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQ3B,iBAAiB,IAAI,MAAM;IAc3B,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,kBAAkB,GAAG,IAAI;IAehF,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAerC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IASzC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAOxD,YAAY,IAAI,cAAc,EAAE;IAOhC,SAAS,IAAI,cAAc,EAAE;IAO7B,aAAa,IAAI,MAAM;IAQvB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAQrC,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAOxC,KAAK,IAAI,UAAU;IA8CnB,MAAM,CAAC,gBAAgB,CACrB,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,MAAU,EAClB,OAAO,GAAE,MAAM,EAAoB,GAClC,iBAAiB;IAqBpB,MAAM,CAAC,kBAAkB,CACvB,aAAa,EAAE,MAAM,EACrB,MAAM,GAAE,MAAU,EAClB,OAAO,GAAE,KAAK,CAAC,SAAS,GAAG,aAAa,GAAG,YAAY,CAA4C,GAClG,iBAAiB;IAmCpB,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB;IA0BrE,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,iBAAiB;IAyClE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,2BAA2B,GAAG,iBAAiB;IASzE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB;CAyC/C"}
@@ -200,6 +200,36 @@ class AbstractNumbering {
200
200
  static create(properties) {
201
201
  return new AbstractNumbering(properties);
202
202
  }
203
+ static fromXML(xml) {
204
+ const abstractNumIdMatch = xml.match(/<w:abstractNum[^>]*w:abstractNumId="([^"]+)"/);
205
+ if (!abstractNumIdMatch || !abstractNumIdMatch[1]) {
206
+ throw new Error('Missing required w:abstractNumId attribute');
207
+ }
208
+ const abstractNumId = parseInt(abstractNumIdMatch[1], 10);
209
+ const nameMatch = xml.match(/<w:name[^>]*w:val="([^"]+)"/);
210
+ const name = nameMatch && nameMatch[1] ? nameMatch[1] : undefined;
211
+ const multiLevelTypeMatch = xml.match(/<w:multiLevelType[^>]*w:val="([^"]+)"/);
212
+ const multiLevelType = multiLevelTypeMatch && multiLevelTypeMatch[1] ? parseInt(multiLevelTypeMatch[1], 10) : 1;
213
+ const abstractNum = new AbstractNumbering({
214
+ abstractNumId,
215
+ name,
216
+ multiLevelType,
217
+ });
218
+ const lvlRegex = /<w:lvl[^>]*>[\s\S]*?<\/w:lvl>/g;
219
+ const lvlMatches = xml.match(lvlRegex);
220
+ if (lvlMatches) {
221
+ for (const lvlXml of lvlMatches) {
222
+ try {
223
+ const level = NumberingLevel_1.NumberingLevel.fromXML(lvlXml);
224
+ abstractNum.addLevel(level);
225
+ }
226
+ catch (error) {
227
+ console.warn(`Failed to parse level: ${error}`);
228
+ }
229
+ }
230
+ }
231
+ return abstractNum;
232
+ }
203
233
  }
204
234
  exports.AbstractNumbering = AbstractNumbering;
205
235
  //# sourceMappingURL=AbstractNumbering.js.map