docxmlater 9.7.7 → 9.7.8

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 (33) hide show
  1. package/dist/core/Document.d.ts.map +1 -1
  2. package/dist/core/Document.js +24 -0
  3. package/dist/core/Document.js.map +1 -1
  4. package/dist/core/DocumentParser.d.ts +2 -0
  5. package/dist/core/DocumentParser.d.ts.map +1 -1
  6. package/dist/core/DocumentParser.js +190 -1
  7. package/dist/core/DocumentParser.js.map +1 -1
  8. package/dist/elements/Section.d.ts +12 -0
  9. package/dist/elements/Section.d.ts.map +1 -1
  10. package/dist/elements/Section.js +183 -0
  11. package/dist/elements/Section.js.map +1 -1
  12. package/dist/elements/Table.d.ts +12 -0
  13. package/dist/elements/Table.d.ts.map +1 -1
  14. package/dist/elements/Table.js +271 -3
  15. package/dist/elements/Table.js.map +1 -1
  16. package/dist/elements/TableCell.d.ts +12 -0
  17. package/dist/elements/TableCell.d.ts.map +1 -1
  18. package/dist/elements/TableCell.js +181 -7
  19. package/dist/elements/TableCell.js.map +1 -1
  20. package/dist/elements/TableRow.d.ts +14 -0
  21. package/dist/elements/TableRow.d.ts.map +1 -1
  22. package/dist/elements/TableRow.js +157 -0
  23. package/dist/elements/TableRow.js.map +1 -1
  24. package/dist/tracking/DocumentTrackingContext.d.ts +7 -0
  25. package/dist/tracking/DocumentTrackingContext.d.ts.map +1 -1
  26. package/dist/tracking/DocumentTrackingContext.js +173 -46
  27. package/dist/tracking/DocumentTrackingContext.js.map +1 -1
  28. package/dist/tracking/TrackingContext.d.ts +7 -1
  29. package/dist/tracking/TrackingContext.d.ts.map +1 -1
  30. package/dist/utils/InMemoryRevisionAcceptor.d.ts.map +1 -1
  31. package/dist/utils/InMemoryRevisionAcceptor.js +23 -0
  32. package/dist/utils/InMemoryRevisionAcceptor.js.map +1 -1
  33. package/package.json +1 -1
@@ -137,5 +137,7 @@ export declare class DocumentParser {
137
137
  }>;
138
138
  private parseHeader;
139
139
  private parseFooter;
140
+ private parseGenericPreviousProperties;
141
+ private parsePreviousSectionProperties;
140
142
  }
141
143
  //# sourceMappingURL=DocumentParser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentParser.d.ts","sourceRoot":"","sources":["../../src/core/DocumentParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentParser.d.ts","sourceRoot":"","sources":["../../src/core/DocumentParser.ts"],"names":[],"mappings":"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"}
@@ -4354,6 +4354,15 @@ class DocumentParser {
4354
4354
  table.setBorders(borders);
4355
4355
  }
4356
4356
  }
4357
+ if (tblPrObj["w:tblPrChange"]) {
4358
+ const changeObj = tblPrObj["w:tblPrChange"];
4359
+ table.setTblPrChange({
4360
+ id: String(changeObj["@_w:id"] || "0"),
4361
+ author: changeObj["@_w:author"] || "",
4362
+ date: changeObj["@_w:date"] || "",
4363
+ previousProperties: this.parseGenericPreviousProperties(changeObj["w:tblPr"]),
4364
+ });
4365
+ }
4357
4366
  }
4358
4367
  async parseTableRowFromObject(rowObj, relationshipManager, zipHandler, imageManager, rawRowXml) {
4359
4368
  try {
@@ -4456,6 +4465,15 @@ class DocumentParser {
4456
4465
  row.setCnfStyle(val);
4457
4466
  }
4458
4467
  }
4468
+ if (trPrObj["w:trPrChange"]) {
4469
+ const changeObj = trPrObj["w:trPrChange"];
4470
+ row.setTrPrChange({
4471
+ id: String(changeObj["@_w:id"] || "0"),
4472
+ author: changeObj["@_w:author"] || "",
4473
+ date: changeObj["@_w:date"] || "",
4474
+ previousProperties: this.parseGenericPreviousProperties(changeObj["w:trPr"]),
4475
+ });
4476
+ }
4459
4477
  }
4460
4478
  parseTablePropertyExceptionsFromObject(tblPrExObj) {
4461
4479
  if (!tblPrExObj)
@@ -4691,6 +4709,15 @@ class DocumentParser {
4691
4709
  });
4692
4710
  cell.setCellRevision(revision);
4693
4711
  }
4712
+ if (tcPr["w:tcPrChange"]) {
4713
+ const changeObj = tcPr["w:tcPrChange"];
4714
+ cell.setTcPrChange({
4715
+ id: String(changeObj["@_w:id"] || "0"),
4716
+ author: changeObj["@_w:author"] || "",
4717
+ date: changeObj["@_w:date"] || "",
4718
+ previousProperties: this.parseGenericPreviousProperties(changeObj["w:tcPr"]),
4719
+ });
4720
+ }
4694
4721
  }
4695
4722
  if (rawCellXml) {
4696
4723
  const cellContent = this.extractCellContentInOrder(rawCellXml);
@@ -5892,7 +5919,21 @@ class DocumentParser {
5892
5919
  sectionProps.printerSettingsId = rId;
5893
5920
  }
5894
5921
  }
5895
- return new Section_1.Section(sectionProps);
5922
+ const section = new Section_1.Section(sectionProps);
5923
+ const sectPrChangeElements = XMLParser_1.XMLParser.extractElements(sectPr, "w:sectPrChange");
5924
+ if (sectPrChangeElements.length > 0 && sectPrChangeElements[0]) {
5925
+ const changeXml = sectPrChangeElements[0];
5926
+ const id = XMLParser_1.XMLParser.extractAttribute(changeXml, "w:id") || "0";
5927
+ const author = XMLParser_1.XMLParser.extractAttribute(changeXml, "w:author") || "";
5928
+ const date = XMLParser_1.XMLParser.extractAttribute(changeXml, "w:date") || "";
5929
+ const prevSectPrElements = XMLParser_1.XMLParser.extractElements(changeXml, "w:sectPr");
5930
+ const prevSectPrXml = prevSectPrElements.length > 0 ? prevSectPrElements[0] : undefined;
5931
+ const prevProps = prevSectPrXml
5932
+ ? this.parsePreviousSectionProperties(prevSectPrXml)
5933
+ : {};
5934
+ section.setSectPrChange({ id, author, date, previousProperties: prevProps });
5935
+ }
5936
+ return section;
5896
5937
  }
5897
5938
  catch (error) {
5898
5939
  const err = error instanceof Error ? error : new Error(String(error));
@@ -6715,6 +6756,154 @@ class DocumentParser {
6715
6756
  return null;
6716
6757
  }
6717
6758
  }
6759
+ parseGenericPreviousProperties(propsObj) {
6760
+ if (!propsObj)
6761
+ return {};
6762
+ const result = {};
6763
+ if (propsObj["w:tblStyle"]) {
6764
+ result.style = propsObj["w:tblStyle"]["@_w:val"] || "";
6765
+ }
6766
+ if (propsObj["w:tblW"]) {
6767
+ result.width = parseInt(propsObj["w:tblW"]["@_w:w"] || "0", 10);
6768
+ result.widthType = propsObj["w:tblW"]["@_w:type"] || "dxa";
6769
+ }
6770
+ if (propsObj["w:tblLayout"]) {
6771
+ result.layout = propsObj["w:tblLayout"]["@_w:type"];
6772
+ }
6773
+ if (propsObj["w:tblInd"]) {
6774
+ result.indent = parseInt(propsObj["w:tblInd"]["@_w:w"] || "0", 10);
6775
+ }
6776
+ if (propsObj["w:tblCellSpacing"]) {
6777
+ result.cellSpacing = parseInt(propsObj["w:tblCellSpacing"]["@_w:w"] || "0", 10);
6778
+ }
6779
+ if (propsObj["w:tblBorders"]) {
6780
+ const borders = {};
6781
+ const bordersObj = propsObj["w:tblBorders"];
6782
+ for (const side of ['top', 'bottom', 'left', 'right', 'insideH', 'insideV']) {
6783
+ if (bordersObj[`w:${side}`]) {
6784
+ borders[side] = this.parseBorderElement(bordersObj[`w:${side}`]);
6785
+ }
6786
+ }
6787
+ if (Object.keys(borders).length > 0)
6788
+ result.borders = borders;
6789
+ }
6790
+ if (propsObj["w:trHeight"]) {
6791
+ result.height = parseInt(propsObj["w:trHeight"]["@_w:val"] || "0", 10);
6792
+ const rule = propsObj["w:trHeight"]["@_w:hRule"];
6793
+ if (rule)
6794
+ result.heightRule = rule;
6795
+ }
6796
+ if (propsObj["w:tblHeader"]) {
6797
+ result.isHeader = true;
6798
+ }
6799
+ if (propsObj["w:cantSplit"]) {
6800
+ result.cantSplit = true;
6801
+ }
6802
+ if (propsObj["w:hidden"]) {
6803
+ result.hidden = true;
6804
+ }
6805
+ if (propsObj["w:tcW"]) {
6806
+ result.width = parseInt(propsObj["w:tcW"]["@_w:w"] || "0", 10);
6807
+ result.widthType = propsObj["w:tcW"]["@_w:type"] || "dxa";
6808
+ }
6809
+ if (propsObj["w:vAlign"]) {
6810
+ result.verticalAlignment = propsObj["w:vAlign"]["@_w:val"];
6811
+ }
6812
+ if (propsObj["w:tcBorders"]) {
6813
+ const borders = {};
6814
+ const bordersObj = propsObj["w:tcBorders"];
6815
+ for (const side of ['top', 'bottom', 'left', 'right']) {
6816
+ if (bordersObj[`w:${side}`]) {
6817
+ borders[side] = this.parseBorderElement(bordersObj[`w:${side}`]);
6818
+ }
6819
+ }
6820
+ if (Object.keys(borders).length > 0)
6821
+ result.borders = borders;
6822
+ }
6823
+ if (propsObj["w:jc"]) {
6824
+ const val = propsObj["w:jc"]["@_w:val"];
6825
+ if (val) {
6826
+ result.alignment = val;
6827
+ result.justification = val;
6828
+ }
6829
+ }
6830
+ if (propsObj["w:shd"]) {
6831
+ const shd = propsObj["w:shd"];
6832
+ const shading = {};
6833
+ if (shd["@_w:val"])
6834
+ shading.pattern = shd["@_w:val"];
6835
+ if (shd["@_w:fill"])
6836
+ shading.fill = shd["@_w:fill"];
6837
+ if (shd["@_w:color"])
6838
+ shading.color = shd["@_w:color"];
6839
+ if (Object.keys(shading).length > 0)
6840
+ result.shading = shading;
6841
+ }
6842
+ return result;
6843
+ }
6844
+ parsePreviousSectionProperties(sectPrXml) {
6845
+ if (!sectPrXml)
6846
+ return {};
6847
+ const result = {};
6848
+ const pgSzElements = XMLParser_1.XMLParser.extractElements(sectPrXml, "w:pgSz");
6849
+ if (pgSzElements.length > 0 && pgSzElements[0]) {
6850
+ const pgSz = pgSzElements[0];
6851
+ const width = XMLParser_1.XMLParser.extractAttribute(pgSz, "w:w");
6852
+ const height = XMLParser_1.XMLParser.extractAttribute(pgSz, "w:h");
6853
+ const orient = XMLParser_1.XMLParser.extractAttribute(pgSz, "w:orient");
6854
+ if (width || height) {
6855
+ result.pageSize = {
6856
+ width: width ? parseInt(width, 10) : undefined,
6857
+ height: height ? parseInt(height, 10) : undefined,
6858
+ orientation: orient === "landscape" ? "landscape" : "portrait",
6859
+ };
6860
+ }
6861
+ }
6862
+ const pgMarElements = XMLParser_1.XMLParser.extractElements(sectPrXml, "w:pgMar");
6863
+ if (pgMarElements.length > 0 && pgMarElements[0]) {
6864
+ const pgMar = pgMarElements[0];
6865
+ const margins = {};
6866
+ const top = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:top");
6867
+ if (top)
6868
+ margins.top = parseInt(top, 10);
6869
+ const bottom = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:bottom");
6870
+ if (bottom)
6871
+ margins.bottom = parseInt(bottom, 10);
6872
+ const left = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:left");
6873
+ if (left)
6874
+ margins.left = parseInt(left, 10);
6875
+ const right = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:right");
6876
+ if (right)
6877
+ margins.right = parseInt(right, 10);
6878
+ const header = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:header");
6879
+ if (header)
6880
+ margins.header = parseInt(header, 10);
6881
+ const footer = XMLParser_1.XMLParser.extractAttribute(pgMar, "w:footer");
6882
+ if (footer)
6883
+ margins.footer = parseInt(footer, 10);
6884
+ if (Object.keys(margins).length > 0)
6885
+ result.margins = margins;
6886
+ }
6887
+ const typeElements = XMLParser_1.XMLParser.extractElements(sectPrXml, "w:type");
6888
+ if (typeElements.length > 0 && typeElements[0]) {
6889
+ const val = XMLParser_1.XMLParser.extractAttribute(typeElements[0], "w:val");
6890
+ if (val)
6891
+ result.type = val;
6892
+ }
6893
+ const colsElements = XMLParser_1.XMLParser.extractElements(sectPrXml, "w:cols");
6894
+ if (colsElements.length > 0 && colsElements[0]) {
6895
+ const cols = colsElements[0];
6896
+ const num = XMLParser_1.XMLParser.extractAttribute(cols, "w:num");
6897
+ const space = XMLParser_1.XMLParser.extractAttribute(cols, "w:space");
6898
+ if (num) {
6899
+ result.columns = {
6900
+ count: parseInt(num, 10),
6901
+ space: space ? parseInt(space, 10) : undefined,
6902
+ };
6903
+ }
6904
+ }
6905
+ return result;
6906
+ }
6718
6907
  }
6719
6908
  exports.DocumentParser = DocumentParser;
6720
6909
  //# sourceMappingURL=DocumentParser.js.map