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.
Files changed (371) hide show
  1. package/README.md +759 -754
  2. package/dist/constants/legacyCompatFlags.js +1 -1
  3. package/dist/constants/legacyCompatFlags.js.map +1 -1
  4. package/dist/constants/limits.js.map +1 -1
  5. package/dist/core/Document.d.ts +50 -50
  6. package/dist/core/Document.d.ts.map +1 -1
  7. package/dist/core/Document.js +483 -471
  8. package/dist/core/Document.js.map +1 -1
  9. package/dist/core/DocumentContent.d.ts +9 -9
  10. package/dist/core/DocumentContent.d.ts.map +1 -1
  11. package/dist/core/DocumentContent.js +1 -1
  12. package/dist/core/DocumentContent.js.map +1 -1
  13. package/dist/core/DocumentGenerator.d.ts +11 -11
  14. package/dist/core/DocumentGenerator.d.ts.map +1 -1
  15. package/dist/core/DocumentGenerator.js +251 -251
  16. package/dist/core/DocumentGenerator.js.map +1 -1
  17. package/dist/core/DocumentIdManager.js.map +1 -1
  18. package/dist/core/DocumentParser.d.ts +15 -15
  19. package/dist/core/DocumentParser.d.ts.map +1 -1
  20. package/dist/core/DocumentParser.js +2123 -2155
  21. package/dist/core/DocumentParser.js.map +1 -1
  22. package/dist/core/DocumentValidator.d.ts.map +1 -1
  23. package/dist/core/DocumentValidator.js +2 -5
  24. package/dist/core/DocumentValidator.js.map +1 -1
  25. package/dist/core/Relationship.js.map +1 -1
  26. package/dist/core/RelationshipManager.d.ts.map +1 -1
  27. package/dist/core/RelationshipManager.js +3 -3
  28. package/dist/core/RelationshipManager.js.map +1 -1
  29. package/dist/elements/AlternateContent.js.map +1 -1
  30. package/dist/elements/Bookmark.d.ts.map +1 -1
  31. package/dist/elements/Bookmark.js +3 -1
  32. package/dist/elements/Bookmark.js.map +1 -1
  33. package/dist/elements/BookmarkManager.d.ts.map +1 -1
  34. package/dist/elements/BookmarkManager.js.map +1 -1
  35. package/dist/elements/Comment.d.ts.map +1 -1
  36. package/dist/elements/Comment.js +9 -6
  37. package/dist/elements/Comment.js.map +1 -1
  38. package/dist/elements/CommentManager.d.ts.map +1 -1
  39. package/dist/elements/CommentManager.js +18 -17
  40. package/dist/elements/CommentManager.js.map +1 -1
  41. package/dist/elements/CommonTypes.d.ts +21 -21
  42. package/dist/elements/CommonTypes.d.ts.map +1 -1
  43. package/dist/elements/CommonTypes.js +56 -56
  44. package/dist/elements/CommonTypes.js.map +1 -1
  45. package/dist/elements/CustomXml.js.map +1 -1
  46. package/dist/elements/Endnote.d.ts.map +1 -1
  47. package/dist/elements/Endnote.js +6 -6
  48. package/dist/elements/Endnote.js.map +1 -1
  49. package/dist/elements/EndnoteManager.d.ts.map +1 -1
  50. package/dist/elements/EndnoteManager.js +6 -7
  51. package/dist/elements/EndnoteManager.js.map +1 -1
  52. package/dist/elements/Field.d.ts.map +1 -1
  53. package/dist/elements/Field.js +82 -25
  54. package/dist/elements/Field.js.map +1 -1
  55. package/dist/elements/FieldHelpers.d.ts.map +1 -1
  56. package/dist/elements/FieldHelpers.js.map +1 -1
  57. package/dist/elements/FontManager.d.ts.map +1 -1
  58. package/dist/elements/FontManager.js +1 -1
  59. package/dist/elements/FontManager.js.map +1 -1
  60. package/dist/elements/Footer.js +2 -2
  61. package/dist/elements/Footer.js.map +1 -1
  62. package/dist/elements/Footnote.d.ts.map +1 -1
  63. package/dist/elements/Footnote.js +6 -6
  64. package/dist/elements/Footnote.js.map +1 -1
  65. package/dist/elements/FootnoteManager.d.ts.map +1 -1
  66. package/dist/elements/FootnoteManager.js +6 -7
  67. package/dist/elements/FootnoteManager.js.map +1 -1
  68. package/dist/elements/Header.js +2 -2
  69. package/dist/elements/Header.js.map +1 -1
  70. package/dist/elements/HeaderFooterManager.js.map +1 -1
  71. package/dist/elements/Hyperlink.d.ts +5 -3
  72. package/dist/elements/Hyperlink.d.ts.map +1 -1
  73. package/dist/elements/Hyperlink.js +134 -76
  74. package/dist/elements/Hyperlink.js.map +1 -1
  75. package/dist/elements/Image.d.ts.map +1 -1
  76. package/dist/elements/Image.js +238 -106
  77. package/dist/elements/Image.js.map +1 -1
  78. package/dist/elements/ImageManager.d.ts.map +1 -1
  79. package/dist/elements/ImageManager.js +1 -1
  80. package/dist/elements/ImageManager.js.map +1 -1
  81. package/dist/elements/ImageRun.js +1 -1
  82. package/dist/elements/ImageRun.js.map +1 -1
  83. package/dist/elements/MathElement.js.map +1 -1
  84. package/dist/elements/Paragraph.d.ts +24 -24
  85. package/dist/elements/Paragraph.d.ts.map +1 -1
  86. package/dist/elements/Paragraph.js +181 -188
  87. package/dist/elements/Paragraph.js.map +1 -1
  88. package/dist/elements/PreservedElement.js.map +1 -1
  89. package/dist/elements/PropertyChangeTypes.d.ts.map +1 -1
  90. package/dist/elements/PropertyChangeTypes.js +6 -6
  91. package/dist/elements/PropertyChangeTypes.js.map +1 -1
  92. package/dist/elements/RangeMarker.d.ts.map +1 -1
  93. package/dist/elements/RangeMarker.js.map +1 -1
  94. package/dist/elements/Revision.d.ts.map +1 -1
  95. package/dist/elements/Revision.js +4 -5
  96. package/dist/elements/Revision.js.map +1 -1
  97. package/dist/elements/RevisionContent.js.map +1 -1
  98. package/dist/elements/RevisionManager.d.ts.map +1 -1
  99. package/dist/elements/RevisionManager.js +40 -48
  100. package/dist/elements/RevisionManager.js.map +1 -1
  101. package/dist/elements/Run.d.ts +16 -16
  102. package/dist/elements/Run.d.ts.map +1 -1
  103. package/dist/elements/Run.js +256 -238
  104. package/dist/elements/Run.js.map +1 -1
  105. package/dist/elements/Section.d.ts.map +1 -1
  106. package/dist/elements/Section.js +36 -11
  107. package/dist/elements/Section.js.map +1 -1
  108. package/dist/elements/Shape.d.ts.map +1 -1
  109. package/dist/elements/Shape.js.map +1 -1
  110. package/dist/elements/StructuredDocumentTag.d.ts +6 -6
  111. package/dist/elements/StructuredDocumentTag.d.ts.map +1 -1
  112. package/dist/elements/StructuredDocumentTag.js +99 -104
  113. package/dist/elements/StructuredDocumentTag.js.map +1 -1
  114. package/dist/elements/Table.d.ts +11 -11
  115. package/dist/elements/Table.d.ts.map +1 -1
  116. package/dist/elements/Table.js +102 -107
  117. package/dist/elements/Table.js.map +1 -1
  118. package/dist/elements/TableCell.d.ts +10 -10
  119. package/dist/elements/TableCell.d.ts.map +1 -1
  120. package/dist/elements/TableCell.js +105 -106
  121. package/dist/elements/TableCell.js.map +1 -1
  122. package/dist/elements/TableGridChange.d.ts.map +1 -1
  123. package/dist/elements/TableGridChange.js.map +1 -1
  124. package/dist/elements/TableOfContents.d.ts.map +1 -1
  125. package/dist/elements/TableOfContents.js +4 -4
  126. package/dist/elements/TableOfContents.js.map +1 -1
  127. package/dist/elements/TableOfContentsElement.js.map +1 -1
  128. package/dist/elements/TableRow.d.ts.map +1 -1
  129. package/dist/elements/TableRow.js +13 -6
  130. package/dist/elements/TableRow.js.map +1 -1
  131. package/dist/elements/TextBox.d.ts.map +1 -1
  132. package/dist/elements/TextBox.js +3 -5
  133. package/dist/elements/TextBox.js.map +1 -1
  134. package/dist/formatting/AbstractNumbering.d.ts +4 -4
  135. package/dist/formatting/AbstractNumbering.d.ts.map +1 -1
  136. package/dist/formatting/AbstractNumbering.js +54 -49
  137. package/dist/formatting/AbstractNumbering.js.map +1 -1
  138. package/dist/formatting/NumberingInstance.d.ts.map +1 -1
  139. package/dist/formatting/NumberingInstance.js +1 -3
  140. package/dist/formatting/NumberingInstance.js.map +1 -1
  141. package/dist/formatting/NumberingLevel.d.ts +5 -5
  142. package/dist/formatting/NumberingLevel.d.ts.map +1 -1
  143. package/dist/formatting/NumberingLevel.js +119 -125
  144. package/dist/formatting/NumberingLevel.js.map +1 -1
  145. package/dist/formatting/NumberingManager.d.ts.map +1 -1
  146. package/dist/formatting/NumberingManager.js +9 -9
  147. package/dist/formatting/NumberingManager.js.map +1 -1
  148. package/dist/formatting/Style.d.ts +11 -11
  149. package/dist/formatting/Style.d.ts.map +1 -1
  150. package/dist/formatting/Style.js +219 -247
  151. package/dist/formatting/Style.js.map +1 -1
  152. package/dist/formatting/StylesManager.d.ts +2 -2
  153. package/dist/formatting/StylesManager.d.ts.map +1 -1
  154. package/dist/formatting/StylesManager.js +96 -102
  155. package/dist/formatting/StylesManager.js.map +1 -1
  156. package/dist/helpers/CleanupHelper.d.ts +1 -1
  157. package/dist/helpers/CleanupHelper.d.ts.map +1 -1
  158. package/dist/helpers/CleanupHelper.js +6 -6
  159. package/dist/helpers/CleanupHelper.js.map +1 -1
  160. package/dist/images/ImageOptimizer.js +7 -7
  161. package/dist/images/ImageOptimizer.js.map +1 -1
  162. package/dist/index.d.ts +9 -9
  163. package/dist/index.d.ts.map +1 -1
  164. package/dist/index.js.map +1 -1
  165. package/dist/managers/DrawingManager.js.map +1 -1
  166. package/dist/tracking/DocumentTrackingContext.d.ts.map +1 -1
  167. package/dist/tracking/DocumentTrackingContext.js +23 -7
  168. package/dist/tracking/DocumentTrackingContext.js.map +1 -1
  169. package/dist/tracking/TrackingContext.d.ts.map +1 -1
  170. package/dist/tracking/TrackingContext.js.map +1 -1
  171. package/dist/types/compatibility-types.js.map +1 -1
  172. package/dist/types/formatting.js.map +1 -1
  173. package/dist/types/list-types.d.ts +6 -6
  174. package/dist/types/list-types.js.map +1 -1
  175. package/dist/types/settings-types.js.map +1 -1
  176. package/dist/types/styleConfig.d.ts +2 -2
  177. package/dist/types/styleConfig.js.map +1 -1
  178. package/dist/utils/ChangelogGenerator.d.ts.map +1 -1
  179. package/dist/utils/ChangelogGenerator.js +97 -101
  180. package/dist/utils/ChangelogGenerator.js.map +1 -1
  181. package/dist/utils/CompatibilityUpgrader.d.ts.map +1 -1
  182. package/dist/utils/CompatibilityUpgrader.js +1 -1
  183. package/dist/utils/CompatibilityUpgrader.js.map +1 -1
  184. package/dist/utils/InMemoryRevisionAcceptor.d.ts.map +1 -1
  185. package/dist/utils/InMemoryRevisionAcceptor.js +1 -6
  186. package/dist/utils/InMemoryRevisionAcceptor.js.map +1 -1
  187. package/dist/utils/MoveOperationHelper.d.ts.map +1 -1
  188. package/dist/utils/MoveOperationHelper.js +1 -1
  189. package/dist/utils/MoveOperationHelper.js.map +1 -1
  190. package/dist/utils/RevisionAwareProcessor.d.ts.map +1 -1
  191. package/dist/utils/RevisionAwareProcessor.js +2 -4
  192. package/dist/utils/RevisionAwareProcessor.js.map +1 -1
  193. package/dist/utils/RevisionWalker.d.ts.map +1 -1
  194. package/dist/utils/RevisionWalker.js +4 -12
  195. package/dist/utils/RevisionWalker.js.map +1 -1
  196. package/dist/utils/SelectiveRevisionAcceptor.d.ts.map +1 -1
  197. package/dist/utils/SelectiveRevisionAcceptor.js +2 -6
  198. package/dist/utils/SelectiveRevisionAcceptor.js.map +1 -1
  199. package/dist/utils/ShadingResolver.d.ts.map +1 -1
  200. package/dist/utils/ShadingResolver.js +1 -1
  201. package/dist/utils/ShadingResolver.js.map +1 -1
  202. package/dist/utils/acceptRevisions.d.ts.map +1 -1
  203. package/dist/utils/acceptRevisions.js +23 -12
  204. package/dist/utils/acceptRevisions.js.map +1 -1
  205. package/dist/utils/cnfStyleDecoder.d.ts +1 -1
  206. package/dist/utils/cnfStyleDecoder.d.ts.map +1 -1
  207. package/dist/utils/cnfStyleDecoder.js +40 -40
  208. package/dist/utils/cnfStyleDecoder.js.map +1 -1
  209. package/dist/utils/corruptionDetection.d.ts.map +1 -1
  210. package/dist/utils/corruptionDetection.js.map +1 -1
  211. package/dist/utils/dateFormatting.js.map +1 -1
  212. package/dist/utils/deepClone.js +1 -1
  213. package/dist/utils/deepClone.js.map +1 -1
  214. package/dist/utils/diagnostics.d.ts.map +1 -1
  215. package/dist/utils/diagnostics.js +1 -1
  216. package/dist/utils/diagnostics.js.map +1 -1
  217. package/dist/utils/errorHandling.js.map +1 -1
  218. package/dist/utils/formatting.d.ts.map +1 -1
  219. package/dist/utils/formatting.js +10 -2
  220. package/dist/utils/formatting.js.map +1 -1
  221. package/dist/utils/list-detection.d.ts +2 -2
  222. package/dist/utils/list-detection.d.ts.map +1 -1
  223. package/dist/utils/list-detection.js +21 -23
  224. package/dist/utils/list-detection.js.map +1 -1
  225. package/dist/utils/logger.d.ts.map +1 -1
  226. package/dist/utils/logger.js +12 -7
  227. package/dist/utils/logger.js.map +1 -1
  228. package/dist/utils/parsingHelpers.js.map +1 -1
  229. package/dist/utils/stripTrackedChanges.d.ts.map +1 -1
  230. package/dist/utils/stripTrackedChanges.js +3 -3
  231. package/dist/utils/stripTrackedChanges.js.map +1 -1
  232. package/dist/utils/textDiff.d.ts +1 -1
  233. package/dist/utils/textDiff.js +8 -8
  234. package/dist/utils/textDiff.js.map +1 -1
  235. package/dist/utils/units.js.map +1 -1
  236. package/dist/utils/validation.d.ts.map +1 -1
  237. package/dist/utils/validation.js +24 -7
  238. package/dist/utils/validation.js.map +1 -1
  239. package/dist/utils/xmlSanitization.d.ts.map +1 -1
  240. package/dist/utils/xmlSanitization.js +3 -3
  241. package/dist/utils/xmlSanitization.js.map +1 -1
  242. package/dist/validation/RevisionAutoFixer.d.ts.map +1 -1
  243. package/dist/validation/RevisionAutoFixer.js +5 -5
  244. package/dist/validation/RevisionAutoFixer.js.map +1 -1
  245. package/dist/validation/RevisionValidator.d.ts.map +1 -1
  246. package/dist/validation/RevisionValidator.js +7 -9
  247. package/dist/validation/RevisionValidator.js.map +1 -1
  248. package/dist/validation/ValidationRules.js +3 -3
  249. package/dist/validation/ValidationRules.js.map +1 -1
  250. package/dist/validation/index.js.map +1 -1
  251. package/dist/xml/XMLBuilder.d.ts +1 -1
  252. package/dist/xml/XMLBuilder.d.ts.map +1 -1
  253. package/dist/xml/XMLBuilder.js +98 -100
  254. package/dist/xml/XMLBuilder.js.map +1 -1
  255. package/dist/xml/XMLParser.d.ts.map +1 -1
  256. package/dist/xml/XMLParser.js +61 -66
  257. package/dist/xml/XMLParser.js.map +1 -1
  258. package/dist/zip/ZipHandler.d.ts.map +1 -1
  259. package/dist/zip/ZipHandler.js.map +1 -1
  260. package/dist/zip/ZipReader.d.ts.map +1 -1
  261. package/dist/zip/ZipReader.js +1 -3
  262. package/dist/zip/ZipReader.js.map +1 -1
  263. package/dist/zip/ZipWriter.d.ts +1 -1
  264. package/dist/zip/ZipWriter.d.ts.map +1 -1
  265. package/dist/zip/ZipWriter.js +28 -36
  266. package/dist/zip/ZipWriter.js.map +1 -1
  267. package/dist/zip/types.js +1 -1
  268. package/dist/zip/types.js.map +1 -1
  269. package/package.json +92 -92
  270. package/src/__tests__/helper-methods.test.ts +512 -512
  271. package/src/constants/legacyCompatFlags.ts +138 -138
  272. package/src/constants/limits.ts +50 -50
  273. package/src/core/Document.ts +985 -1145
  274. package/src/core/DocumentContent.ts +461 -467
  275. package/src/core/DocumentGenerator.ts +1133 -1104
  276. package/src/core/DocumentIdManager.ts +158 -158
  277. package/src/core/DocumentParser.ts +2347 -2716
  278. package/src/core/DocumentValidator.ts +363 -372
  279. package/src/core/Relationship.ts +367 -367
  280. package/src/core/RelationshipManager.ts +429 -428
  281. package/src/elements/AlternateContent.ts +42 -42
  282. package/src/elements/Bookmark.ts +212 -210
  283. package/src/elements/BookmarkManager.ts +247 -250
  284. package/src/elements/Comment.ts +356 -359
  285. package/src/elements/CommentManager.ts +499 -502
  286. package/src/elements/CommonTypes.ts +524 -549
  287. package/src/elements/CustomXml.ts +36 -36
  288. package/src/elements/Endnote.ts +221 -217
  289. package/src/elements/EndnoteManager.ts +246 -249
  290. package/src/elements/Field.ts +1292 -1233
  291. package/src/elements/FieldHelpers.ts +329 -333
  292. package/src/elements/FontManager.ts +336 -339
  293. package/src/elements/Footer.ts +269 -269
  294. package/src/elements/Footnote.ts +221 -217
  295. package/src/elements/FootnoteManager.ts +246 -249
  296. package/src/elements/Header.ts +269 -269
  297. package/src/elements/HeaderFooterManager.ts +219 -219
  298. package/src/elements/Hyperlink.ts +1288 -1193
  299. package/src/elements/Image.ts +1982 -1756
  300. package/src/elements/ImageManager.ts +437 -432
  301. package/src/elements/ImageRun.ts +59 -59
  302. package/src/elements/MathElement.ts +65 -65
  303. package/src/elements/Paragraph.ts +4347 -4287
  304. package/src/elements/PreservedElement.ts +53 -53
  305. package/src/elements/PropertyChangeTypes.ts +458 -442
  306. package/src/elements/RangeMarker.ts +382 -400
  307. package/src/elements/Revision.ts +1198 -1217
  308. package/src/elements/RevisionContent.ts +73 -73
  309. package/src/elements/RevisionManager.ts +1070 -1070
  310. package/src/elements/Run.ts +3103 -3073
  311. package/src/elements/Section.ts +1521 -1421
  312. package/src/elements/Shape.ts +884 -873
  313. package/src/elements/StructuredDocumentTag.ts +1176 -1207
  314. package/src/elements/Table.ts +2468 -2524
  315. package/src/elements/TableCell.ts +1617 -1621
  316. package/src/elements/TableGridChange.ts +149 -151
  317. package/src/elements/TableOfContents.ts +701 -691
  318. package/src/elements/TableOfContentsElement.ts +89 -89
  319. package/src/elements/TableRow.ts +960 -929
  320. package/src/elements/TextBox.ts +766 -768
  321. package/src/formatting/AbstractNumbering.ts +580 -579
  322. package/src/formatting/NumberingInstance.ts +295 -299
  323. package/src/formatting/NumberingLevel.ts +981 -1040
  324. package/src/formatting/NumberingManager.ts +833 -827
  325. package/src/formatting/Style.ts +1785 -1879
  326. package/src/formatting/StylesManager.ts +1090 -1130
  327. package/src/helpers/CleanupHelper.ts +524 -524
  328. package/src/images/ImageOptimizer.ts +274 -274
  329. package/src/index.ts +559 -554
  330. package/src/managers/DrawingManager.ts +319 -319
  331. package/src/tracking/DocumentTrackingContext.ts +687 -674
  332. package/src/tracking/TrackingContext.ts +175 -173
  333. package/src/types/compatibility-types.ts +49 -49
  334. package/src/types/formatting.ts +210 -210
  335. package/src/types/list-types.ts +14 -14
  336. package/src/types/settings-types.ts +59 -59
  337. package/src/types/styleConfig.ts +189 -189
  338. package/src/utils/ChangelogGenerator.ts +1583 -1581
  339. package/src/utils/CompatibilityUpgrader.ts +235 -237
  340. package/src/utils/InMemoryRevisionAcceptor.ts +691 -696
  341. package/src/utils/MoveOperationHelper.ts +233 -238
  342. package/src/utils/RevisionAwareProcessor.ts +518 -526
  343. package/src/utils/RevisionWalker.ts +427 -457
  344. package/src/utils/SelectiveRevisionAcceptor.ts +662 -683
  345. package/src/utils/ShadingResolver.ts +105 -107
  346. package/src/utils/acceptRevisions.ts +723 -714
  347. package/src/utils/cnfStyleDecoder.ts +212 -217
  348. package/src/utils/corruptionDetection.ts +346 -345
  349. package/src/utils/dateFormatting.ts +20 -20
  350. package/src/utils/deepClone.ts +77 -78
  351. package/src/utils/diagnostics.ts +125 -129
  352. package/src/utils/errorHandling.ts +80 -80
  353. package/src/utils/formatting.ts +220 -213
  354. package/src/utils/list-detection.ts +32 -42
  355. package/src/utils/logger.ts +412 -404
  356. package/src/utils/parsingHelpers.ts +190 -190
  357. package/src/utils/stripTrackedChanges.ts +356 -353
  358. package/src/utils/textDiff.ts +100 -100
  359. package/src/utils/units.ts +421 -421
  360. package/src/utils/validation.ts +553 -542
  361. package/src/utils/xmlSanitization.ts +179 -182
  362. package/src/validation/RevisionAutoFixer.ts +541 -542
  363. package/src/validation/RevisionValidator.ts +470 -460
  364. package/src/validation/ValidationRules.ts +338 -338
  365. package/src/validation/index.ts +30 -30
  366. package/src/xml/XMLBuilder.ts +857 -871
  367. package/src/xml/XMLParser.ts +877 -919
  368. package/src/zip/ZipHandler.ts +629 -637
  369. package/src/zip/ZipReader.ts +295 -299
  370. package/src/zip/ZipWriter.ts +374 -390
  371. package/src/zip/types.ts +116 -116
@@ -64,7 +64,7 @@ class Style {
64
64
  }
65
65
  setUiPriority(priority) {
66
66
  if (priority < 0 || priority > 99) {
67
- throw new Error("UI priority must be between 0 and 99");
67
+ throw new Error('UI priority must be between 0 and 99');
68
68
  }
69
69
  this.properties.uiPriority = priority;
70
70
  return this;
@@ -137,7 +137,7 @@ class Style {
137
137
  this.properties.tableStyle = {};
138
138
  }
139
139
  if (size < 0) {
140
- throw new Error("Row band size must be non-negative");
140
+ throw new Error('Row band size must be non-negative');
141
141
  }
142
142
  this.properties.tableStyle.rowBandSize = size;
143
143
  return this;
@@ -147,7 +147,7 @@ class Style {
147
147
  this.properties.tableStyle = {};
148
148
  }
149
149
  if (size < 0) {
150
- throw new Error("Column band size must be non-negative");
150
+ throw new Error('Column band size must be non-negative');
151
151
  }
152
152
  this.properties.tableStyle.colBandSize = size;
153
153
  return this;
@@ -164,17 +164,10 @@ class Style {
164
164
  }
165
165
  isValid() {
166
166
  try {
167
- if (!this.properties.styleId ||
168
- !this.properties.name ||
169
- !this.properties.type) {
167
+ if (!this.properties.styleId || !this.properties.name || !this.properties.type) {
170
168
  return false;
171
169
  }
172
- const validTypes = [
173
- "paragraph",
174
- "character",
175
- "table",
176
- "numbering",
177
- ];
170
+ const validTypes = ['paragraph', 'character', 'table', 'numbering'];
178
171
  if (!validTypes.includes(this.properties.type)) {
179
172
  return false;
180
173
  }
@@ -184,14 +177,7 @@ class Style {
184
177
  if (this.properties.paragraphFormatting) {
185
178
  const pf = this.properties.paragraphFormatting;
186
179
  if (pf.alignment) {
187
- const validAlignments = [
188
- "left",
189
- "center",
190
- "right",
191
- "justify",
192
- "both",
193
- "distribute",
194
- ];
180
+ const validAlignments = ['left', 'center', 'right', 'justify', 'both', 'distribute'];
195
181
  if (!validAlignments.includes(pf.alignment)) {
196
182
  return false;
197
183
  }
@@ -204,8 +190,7 @@ class Style {
204
190
  return false;
205
191
  if (spacing.line !== undefined && spacing.line < 0)
206
192
  return false;
207
- if (spacing.lineRule &&
208
- !["auto", "exact", "atLeast"].includes(spacing.lineRule)) {
193
+ if (spacing.lineRule && !['auto', 'exact', 'atLeast'].includes(spacing.lineRule)) {
209
194
  return false;
210
195
  }
211
196
  }
@@ -227,23 +212,23 @@ class Style {
227
212
  }
228
213
  if (rf.highlight) {
229
214
  const validHighlights = [
230
- "black",
231
- "blue",
232
- "cyan",
233
- "darkBlue",
234
- "darkCyan",
235
- "darkGray",
236
- "darkGreen",
237
- "darkMagenta",
238
- "darkRed",
239
- "darkYellow",
240
- "green",
241
- "lightGray",
242
- "magenta",
243
- "none",
244
- "red",
245
- "white",
246
- "yellow",
215
+ 'black',
216
+ 'blue',
217
+ 'cyan',
218
+ 'darkBlue',
219
+ 'darkCyan',
220
+ 'darkGray',
221
+ 'darkGreen',
222
+ 'darkMagenta',
223
+ 'darkRed',
224
+ 'darkYellow',
225
+ 'green',
226
+ 'lightGray',
227
+ 'magenta',
228
+ 'none',
229
+ 'red',
230
+ 'white',
231
+ 'yellow',
247
232
  ];
248
233
  if (!validHighlights.includes(rf.highlight)) {
249
234
  return false;
@@ -266,79 +251,79 @@ class Style {
266
251
  }
267
252
  toXML() {
268
253
  const styleAttrs = {
269
- "w:type": this.properties.type,
270
- "w:styleId": this.properties.styleId,
254
+ 'w:type': this.properties.type,
255
+ 'w:styleId': this.properties.styleId,
271
256
  };
272
257
  if (this.properties.isDefault) {
273
- styleAttrs["w:default"] = "1";
258
+ styleAttrs['w:default'] = '1';
274
259
  }
275
260
  if (this.properties.customStyle) {
276
- styleAttrs["w:customStyle"] = "1";
261
+ styleAttrs['w:customStyle'] = '1';
277
262
  }
278
263
  const styleChildren = [];
279
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("name", { "w:val": this.properties.name }));
264
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('name', { 'w:val': this.properties.name }));
280
265
  if (this.properties.aliases) {
281
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("aliases", { "w:val": this.properties.aliases }));
266
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('aliases', { 'w:val': this.properties.aliases }));
282
267
  }
283
268
  if (this.properties.basedOn) {
284
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("basedOn", { "w:val": this.properties.basedOn }));
269
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('basedOn', { 'w:val': this.properties.basedOn }));
285
270
  }
286
271
  if (this.properties.next) {
287
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("next", { "w:val": this.properties.next }));
272
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('next', { 'w:val': this.properties.next }));
288
273
  }
289
274
  if (this.properties.link) {
290
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("link", { "w:val": this.properties.link }));
275
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('link', { 'w:val': this.properties.link }));
291
276
  }
292
277
  if (this.properties.autoRedefine) {
293
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("autoRedefine"));
278
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('autoRedefine'));
294
279
  }
295
280
  if (this.properties.uiPriority !== undefined) {
296
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("uiPriority", {
297
- "w:val": String(this.properties.uiPriority),
281
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('uiPriority', {
282
+ 'w:val': String(this.properties.uiPriority),
298
283
  }));
299
284
  }
300
285
  if (this.properties.semiHidden) {
301
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("semiHidden"));
286
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('semiHidden'));
302
287
  }
303
288
  if (this.properties.unhideWhenUsed) {
304
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("unhideWhenUsed"));
289
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('unhideWhenUsed'));
305
290
  }
306
291
  if (this.properties.qFormat !== undefined) {
307
292
  if (this.properties.qFormat) {
308
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("qFormat"));
293
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('qFormat'));
309
294
  }
310
295
  }
311
296
  else if (!this.properties.customStyle) {
312
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("qFormat"));
297
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('qFormat'));
313
298
  }
314
299
  if (this.properties.locked) {
315
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("locked"));
300
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('locked'));
316
301
  }
317
302
  if (this.properties.personal) {
318
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("personal"));
303
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('personal'));
319
304
  }
320
305
  if (this.properties.personalCompose) {
321
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("personalCompose"));
306
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('personalCompose'));
322
307
  }
323
308
  if (this.properties.personalReply) {
324
- styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf("personalReply"));
309
+ styleChildren.push(XMLBuilder_1.XMLBuilder.wSelf('personalReply'));
325
310
  }
326
311
  if (this.properties.paragraphFormatting || this.properties.numPr) {
327
312
  const pPr = this.generateParagraphProperties(this.properties.paragraphFormatting || {});
328
313
  if (this.properties.numPr) {
329
314
  const numPrChildren = [];
330
315
  if (this.properties.numPr.ilvl !== undefined) {
331
- numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("ilvl", { "w:val": String(this.properties.numPr.ilvl) }));
316
+ numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ilvl', { 'w:val': String(this.properties.numPr.ilvl) }));
332
317
  }
333
318
  if (this.properties.numPr.numId !== undefined) {
334
- numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("numId", { "w:val": String(this.properties.numPr.numId) }));
319
+ numPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('numId', { 'w:val': String(this.properties.numPr.numId) }));
335
320
  }
336
321
  if (numPrChildren.length > 0) {
337
322
  if (pPr.children) {
338
- pPr.children.unshift(XMLBuilder_1.XMLBuilder.w("numPr", undefined, numPrChildren));
323
+ pPr.children.unshift(XMLBuilder_1.XMLBuilder.w('numPr', undefined, numPrChildren));
339
324
  }
340
325
  else {
341
- pPr.children = [XMLBuilder_1.XMLBuilder.w("numPr", undefined, numPrChildren)];
326
+ pPr.children = [XMLBuilder_1.XMLBuilder.w('numPr', undefined, numPrChildren)];
342
327
  }
343
328
  }
344
329
  }
@@ -372,8 +357,7 @@ class Style {
372
357
  }
373
358
  }
374
359
  if (this.properties.tableStyle.conditionalFormatting) {
375
- for (const conditional of this.properties.tableStyle
376
- .conditionalFormatting) {
360
+ for (const conditional of this.properties.tableStyle.conditionalFormatting) {
377
361
  const tblStylePr = this.generateConditionalFormatting(conditional);
378
362
  if (tblStylePr.children && tblStylePr.children.length > 0) {
379
363
  styleChildren.push(tblStylePr);
@@ -381,144 +365,142 @@ class Style {
381
365
  }
382
366
  }
383
367
  }
384
- return XMLBuilder_1.XMLBuilder.w("style", styleAttrs, styleChildren);
368
+ return XMLBuilder_1.XMLBuilder.w('style', styleAttrs, styleChildren);
385
369
  }
386
370
  generateParagraphProperties(formatting) {
387
371
  const pPrChildren = [];
388
372
  if (formatting.keepNext) {
389
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("keepNext"));
373
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepNext'));
390
374
  }
391
375
  if (formatting.keepLines) {
392
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("keepLines"));
376
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('keepLines'));
393
377
  }
394
378
  if (formatting.pageBreakBefore) {
395
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("pageBreakBefore"));
379
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('pageBreakBefore'));
396
380
  }
397
381
  if (formatting.spacing) {
398
382
  const spc = formatting.spacing;
399
383
  const attributes = {};
400
384
  if (spc.before !== undefined)
401
- attributes["w:before"] = spc.before;
385
+ attributes['w:before'] = spc.before;
402
386
  if (spc.after !== undefined)
403
- attributes["w:after"] = spc.after;
387
+ attributes['w:after'] = spc.after;
404
388
  if (spc.line !== undefined)
405
- attributes["w:line"] = spc.line;
389
+ attributes['w:line'] = spc.line;
406
390
  if (spc.lineRule)
407
- attributes["w:lineRule"] = spc.lineRule;
391
+ attributes['w:lineRule'] = spc.lineRule;
408
392
  if (Object.keys(attributes).length > 0) {
409
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("spacing", attributes));
393
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('spacing', attributes));
410
394
  }
411
395
  }
412
396
  if (formatting.indentation) {
413
397
  const ind = formatting.indentation;
414
398
  const attributes = {};
415
399
  if (ind.left !== undefined)
416
- attributes["w:left"] = ind.left;
400
+ attributes['w:left'] = ind.left;
417
401
  if (ind.right !== undefined)
418
- attributes["w:right"] = ind.right;
402
+ attributes['w:right'] = ind.right;
419
403
  if (ind.firstLine !== undefined)
420
- attributes["w:firstLine"] = ind.firstLine;
404
+ attributes['w:firstLine'] = ind.firstLine;
421
405
  if (ind.hanging !== undefined)
422
- attributes["w:hanging"] = ind.hanging;
406
+ attributes['w:hanging'] = ind.hanging;
423
407
  if (Object.keys(attributes).length > 0) {
424
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("ind", attributes));
408
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('ind', attributes));
425
409
  }
426
410
  }
427
411
  if (formatting.contextualSpacing) {
428
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("contextualSpacing", { "w:val": "1" }));
412
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('contextualSpacing', { 'w:val': '1' }));
429
413
  }
430
414
  if (formatting.alignment) {
431
- const alignmentValue = formatting.alignment === "justify" ? "both" : formatting.alignment;
432
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("jc", { "w:val": alignmentValue }));
415
+ const alignmentValue = formatting.alignment === 'justify' ? 'both' : formatting.alignment;
416
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': alignmentValue }));
433
417
  }
434
418
  if (formatting.outlineLevel !== undefined) {
435
- pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("outlineLvl", { "w:val": formatting.outlineLevel.toString() }));
419
+ pPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('outlineLvl', { 'w:val': formatting.outlineLevel.toString() }));
436
420
  }
437
- return XMLBuilder_1.XMLBuilder.w("pPr", undefined, pPrChildren);
421
+ return XMLBuilder_1.XMLBuilder.w('pPr', undefined, pPrChildren);
438
422
  }
439
423
  generateRunProperties(formatting) {
440
424
  const rPrChildren = [];
441
425
  if (formatting.font) {
442
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("rFonts", {
443
- "w:ascii": formatting.font,
444
- "w:hAnsi": formatting.font,
445
- "w:cs": formatting.font,
426
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('rFonts', {
427
+ 'w:ascii': formatting.font,
428
+ 'w:hAnsi': formatting.font,
429
+ 'w:cs': formatting.font,
446
430
  }));
447
431
  }
448
432
  if (formatting.bold) {
449
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("b"));
433
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('b'));
450
434
  }
451
435
  if (formatting.italic) {
452
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("i"));
436
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('i'));
453
437
  }
454
438
  if (formatting.allCaps) {
455
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("caps"));
439
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('caps'));
456
440
  }
457
441
  if (formatting.smallCaps) {
458
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("smallCaps"));
442
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('smallCaps'));
459
443
  }
460
444
  if (formatting.strike) {
461
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("strike"));
445
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('strike'));
462
446
  }
463
447
  if (formatting.dstrike) {
464
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("dstrike"));
448
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('dstrike'));
465
449
  }
466
450
  if (formatting.color) {
467
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("color", { "w:val": formatting.color }));
451
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('color', { 'w:val': formatting.color }));
468
452
  }
469
453
  if (formatting.size !== undefined) {
470
454
  const halfPoints = (0, units_1.pointsToHalfPoints)(formatting.size);
471
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("sz", { "w:val": halfPoints }));
472
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("szCs", { "w:val": halfPoints }));
455
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('sz', { 'w:val': halfPoints }));
456
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('szCs', { 'w:val': halfPoints }));
473
457
  }
474
458
  if (formatting.highlight) {
475
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("highlight", { "w:val": formatting.highlight }));
459
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('highlight', { 'w:val': formatting.highlight }));
476
460
  }
477
461
  if (formatting.underline) {
478
- const underlineValue = typeof formatting.underline === "string"
479
- ? formatting.underline
480
- : "single";
481
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("u", { "w:val": underlineValue }));
462
+ const underlineValue = typeof formatting.underline === 'string' ? formatting.underline : 'single';
463
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('u', { 'w:val': underlineValue }));
482
464
  }
483
465
  if (formatting.subscript) {
484
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("vertAlign", { "w:val": "subscript" }));
466
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('vertAlign', { 'w:val': 'subscript' }));
485
467
  }
486
468
  if (formatting.superscript) {
487
- rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("vertAlign", { "w:val": "superscript" }));
469
+ rPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('vertAlign', { 'w:val': 'superscript' }));
488
470
  }
489
- return XMLBuilder_1.XMLBuilder.w("rPr", undefined, rPrChildren);
471
+ return XMLBuilder_1.XMLBuilder.w('rPr', undefined, rPrChildren);
490
472
  }
491
473
  generateTableProperties(formatting, tableStyle, isConditional = false) {
492
474
  const tblPrChildren = [];
493
475
  if (tableStyle.rowBandSize !== undefined) {
494
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("tblStyleRowBandSize", {
495
- "w:val": tableStyle.rowBandSize,
476
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblStyleRowBandSize', {
477
+ 'w:val': tableStyle.rowBandSize,
496
478
  }));
497
479
  }
498
480
  if (tableStyle.colBandSize !== undefined) {
499
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("tblStyleColBandSize", {
500
- "w:val": tableStyle.colBandSize,
481
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblStyleColBandSize', {
482
+ 'w:val': tableStyle.colBandSize,
501
483
  }));
502
484
  }
503
485
  if (formatting.alignment) {
504
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("jc", { "w:val": formatting.alignment }));
486
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': formatting.alignment }));
505
487
  }
506
488
  if (formatting.cellSpacing !== undefined) {
507
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("tblCellSpacing", {
508
- "w:w": formatting.cellSpacing,
509
- "w:type": "dxa",
489
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblCellSpacing', {
490
+ 'w:w': formatting.cellSpacing,
491
+ 'w:type': 'dxa',
510
492
  }));
511
493
  }
512
494
  if (formatting.indent !== undefined) {
513
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("tblInd", {
514
- "w:w": formatting.indent,
515
- "w:type": "dxa",
495
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblInd', {
496
+ 'w:w': formatting.indent,
497
+ 'w:type': 'dxa',
516
498
  }));
517
499
  }
518
500
  if (formatting.borders) {
519
501
  const borderElements = this.generateBorderElements(formatting.borders, false);
520
502
  if (borderElements.length > 0) {
521
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.w("tblBorders", undefined, borderElements));
503
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.w('tblBorders', undefined, borderElements));
522
504
  }
523
505
  }
524
506
  if (formatting.shading && !isConditional) {
@@ -527,41 +509,41 @@ class Style {
527
509
  if (formatting.cellMargins) {
528
510
  const marginElements = [];
529
511
  if (formatting.cellMargins.top !== undefined) {
530
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("top", {
531
- "w:w": formatting.cellMargins.top,
532
- "w:type": "dxa",
512
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('top', {
513
+ 'w:w': formatting.cellMargins.top,
514
+ 'w:type': 'dxa',
533
515
  }));
534
516
  }
535
517
  if (formatting.cellMargins.left !== undefined) {
536
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("left", {
537
- "w:w": formatting.cellMargins.left,
538
- "w:type": "dxa",
518
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('left', {
519
+ 'w:w': formatting.cellMargins.left,
520
+ 'w:type': 'dxa',
539
521
  }));
540
522
  }
541
523
  if (formatting.cellMargins.bottom !== undefined) {
542
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("bottom", {
543
- "w:w": formatting.cellMargins.bottom,
544
- "w:type": "dxa",
524
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('bottom', {
525
+ 'w:w': formatting.cellMargins.bottom,
526
+ 'w:type': 'dxa',
545
527
  }));
546
528
  }
547
529
  if (formatting.cellMargins.right !== undefined) {
548
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("right", {
549
- "w:w": formatting.cellMargins.right,
550
- "w:type": "dxa",
530
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('right', {
531
+ 'w:w': formatting.cellMargins.right,
532
+ 'w:type': 'dxa',
551
533
  }));
552
534
  }
553
535
  if (marginElements.length > 0) {
554
- tblPrChildren.push(XMLBuilder_1.XMLBuilder.w("tblCellMar", undefined, marginElements));
536
+ tblPrChildren.push(XMLBuilder_1.XMLBuilder.w('tblCellMar', undefined, marginElements));
555
537
  }
556
538
  }
557
- return XMLBuilder_1.XMLBuilder.w("tblPr", undefined, tblPrChildren);
539
+ return XMLBuilder_1.XMLBuilder.w('tblPr', undefined, tblPrChildren);
558
540
  }
559
541
  generateTableCellProperties(formatting) {
560
542
  const tcPrChildren = [];
561
543
  if (formatting.borders) {
562
544
  const borderElements = this.generateBorderElements(formatting.borders, true);
563
545
  if (borderElements.length > 0) {
564
- tcPrChildren.push(XMLBuilder_1.XMLBuilder.w("tcBorders", undefined, borderElements));
546
+ tcPrChildren.push(XMLBuilder_1.XMLBuilder.w('tcBorders', undefined, borderElements));
565
547
  }
566
548
  }
567
549
  if (formatting.shading) {
@@ -570,47 +552,47 @@ class Style {
570
552
  if (formatting.margins) {
571
553
  const marginElements = [];
572
554
  if (formatting.margins.top !== undefined) {
573
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("top", {
574
- "w:w": formatting.margins.top,
575
- "w:type": "dxa",
555
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('top', {
556
+ 'w:w': formatting.margins.top,
557
+ 'w:type': 'dxa',
576
558
  }));
577
559
  }
578
560
  if (formatting.margins.left !== undefined) {
579
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("left", {
580
- "w:w": formatting.margins.left,
581
- "w:type": "dxa",
561
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('left', {
562
+ 'w:w': formatting.margins.left,
563
+ 'w:type': 'dxa',
582
564
  }));
583
565
  }
584
566
  if (formatting.margins.bottom !== undefined) {
585
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("bottom", {
586
- "w:w": formatting.margins.bottom,
587
- "w:type": "dxa",
567
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('bottom', {
568
+ 'w:w': formatting.margins.bottom,
569
+ 'w:type': 'dxa',
588
570
  }));
589
571
  }
590
572
  if (formatting.margins.right !== undefined) {
591
- marginElements.push(XMLBuilder_1.XMLBuilder.wSelf("right", {
592
- "w:w": formatting.margins.right,
593
- "w:type": "dxa",
573
+ marginElements.push(XMLBuilder_1.XMLBuilder.wSelf('right', {
574
+ 'w:w': formatting.margins.right,
575
+ 'w:type': 'dxa',
594
576
  }));
595
577
  }
596
578
  if (marginElements.length > 0) {
597
- tcPrChildren.push(XMLBuilder_1.XMLBuilder.w("tcMar", undefined, marginElements));
579
+ tcPrChildren.push(XMLBuilder_1.XMLBuilder.w('tcMar', undefined, marginElements));
598
580
  }
599
581
  }
600
582
  if (formatting.verticalAlignment) {
601
- tcPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("vAlign", { "w:val": formatting.verticalAlignment }));
583
+ tcPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('vAlign', { 'w:val': formatting.verticalAlignment }));
602
584
  }
603
- return XMLBuilder_1.XMLBuilder.w("tcPr", undefined, tcPrChildren);
585
+ return XMLBuilder_1.XMLBuilder.w('tcPr', undefined, tcPrChildren);
604
586
  }
605
587
  generateTableRowProperties(formatting) {
606
588
  const trPrChildren = [];
607
589
  if (formatting.cantSplit) {
608
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("cantSplit"));
590
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cantSplit'));
609
591
  }
610
592
  if (formatting.isHeader) {
611
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf("tblHeader"));
593
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblHeader'));
612
594
  }
613
- return XMLBuilder_1.XMLBuilder.w("trPr", undefined, trPrChildren);
595
+ return XMLBuilder_1.XMLBuilder.w('trPr', undefined, trPrChildren);
614
596
  }
615
597
  generateConditionalFormatting(conditional) {
616
598
  const tblStylePrChildren = [];
@@ -644,30 +626,23 @@ class Style {
644
626
  tblStylePrChildren.push(trPr);
645
627
  }
646
628
  }
647
- return XMLBuilder_1.XMLBuilder.w("tblStylePr", { "w:type": conditional.type }, tblStylePrChildren);
629
+ return XMLBuilder_1.XMLBuilder.w('tblStylePr', { 'w:type': conditional.type }, tblStylePrChildren);
648
630
  }
649
631
  generateBorderElements(borders, includeDiagonals) {
650
632
  const borderElements = [];
651
- const borderProps = [
652
- "top",
653
- "left",
654
- "bottom",
655
- "right",
656
- "insideH",
657
- "insideV",
658
- ];
633
+ const borderProps = ['top', 'left', 'bottom', 'right', 'insideH', 'insideV'];
659
634
  for (const prop of borderProps) {
660
635
  const border = borders[prop];
661
636
  if (border) {
662
637
  const attrs = {};
663
638
  if (border.style)
664
- attrs["w:val"] = border.style;
639
+ attrs['w:val'] = border.style;
665
640
  if (border.size !== undefined)
666
- attrs["w:sz"] = border.size;
641
+ attrs['w:sz'] = border.size;
667
642
  if (border.space !== undefined)
668
- attrs["w:space"] = border.space;
643
+ attrs['w:space'] = border.space;
669
644
  if (border.color)
670
- attrs["w:color"] = border.color;
645
+ attrs['w:color'] = border.color;
671
646
  if (Object.keys(attrs).length > 0) {
672
647
  borderElements.push(XMLBuilder_1.XMLBuilder.wSelf(prop, attrs));
673
648
  }
@@ -678,29 +653,29 @@ class Style {
678
653
  if (cellBorders.tl2br) {
679
654
  const attrs = {};
680
655
  if (cellBorders.tl2br.style)
681
- attrs["w:val"] = cellBorders.tl2br.style;
656
+ attrs['w:val'] = cellBorders.tl2br.style;
682
657
  if (cellBorders.tl2br.size !== undefined)
683
- attrs["w:sz"] = cellBorders.tl2br.size;
658
+ attrs['w:sz'] = cellBorders.tl2br.size;
684
659
  if (cellBorders.tl2br.space !== undefined)
685
- attrs["w:space"] = cellBorders.tl2br.space;
660
+ attrs['w:space'] = cellBorders.tl2br.space;
686
661
  if (cellBorders.tl2br.color)
687
- attrs["w:color"] = cellBorders.tl2br.color;
662
+ attrs['w:color'] = cellBorders.tl2br.color;
688
663
  if (Object.keys(attrs).length > 0) {
689
- borderElements.push(XMLBuilder_1.XMLBuilder.wSelf("tl2br", attrs));
664
+ borderElements.push(XMLBuilder_1.XMLBuilder.wSelf('tl2br', attrs));
690
665
  }
691
666
  }
692
667
  if (cellBorders.tr2bl) {
693
668
  const attrs = {};
694
669
  if (cellBorders.tr2bl.style)
695
- attrs["w:val"] = cellBorders.tr2bl.style;
670
+ attrs['w:val'] = cellBorders.tr2bl.style;
696
671
  if (cellBorders.tr2bl.size !== undefined)
697
- attrs["w:sz"] = cellBorders.tr2bl.size;
672
+ attrs['w:sz'] = cellBorders.tr2bl.size;
698
673
  if (cellBorders.tr2bl.space !== undefined)
699
- attrs["w:space"] = cellBorders.tr2bl.space;
674
+ attrs['w:space'] = cellBorders.tr2bl.space;
700
675
  if (cellBorders.tr2bl.color)
701
- attrs["w:color"] = cellBorders.tr2bl.color;
676
+ attrs['w:color'] = cellBorders.tr2bl.color;
702
677
  if (Object.keys(attrs).length > 0) {
703
- borderElements.push(XMLBuilder_1.XMLBuilder.wSelf("tr2bl", attrs));
678
+ borderElements.push(XMLBuilder_1.XMLBuilder.wSelf('tr2bl', attrs));
704
679
  }
705
680
  }
706
681
  }
@@ -708,39 +683,39 @@ class Style {
708
683
  }
709
684
  generateShadingElement(shading) {
710
685
  const attrs = (0, CommonTypes_1.buildShadingAttributes)(shading);
711
- return XMLBuilder_1.XMLBuilder.wSelf("shd", attrs);
686
+ return XMLBuilder_1.XMLBuilder.wSelf('shd', attrs);
712
687
  }
713
688
  static create(properties) {
714
689
  return new Style(properties);
715
690
  }
716
691
  static createNormalStyle() {
717
692
  return new Style({
718
- styleId: "Normal",
719
- name: "Normal",
720
- type: "paragraph",
693
+ styleId: 'Normal',
694
+ name: 'Normal',
695
+ type: 'paragraph',
721
696
  isDefault: true,
722
- next: "Normal",
697
+ next: 'Normal',
723
698
  qFormat: true,
724
699
  uiPriority: 0,
725
700
  paragraphFormatting: {
726
- alignment: "left",
701
+ alignment: 'left',
727
702
  spacing: {
728
703
  before: 60,
729
704
  after: 60,
730
705
  line: 240,
731
- lineRule: "auto",
706
+ lineRule: 'auto',
732
707
  },
733
708
  },
734
709
  runFormatting: {
735
- font: "Verdana",
710
+ font: 'Verdana',
736
711
  size: 12,
737
- color: "000000",
712
+ color: '000000',
738
713
  },
739
714
  });
740
715
  }
741
716
  static createHeadingStyle(level) {
742
717
  if (level < 1 || level > 9) {
743
- throw new Error("Heading level must be between 1 and 9");
718
+ throw new Error('Heading level must be between 1 and 9');
744
719
  }
745
720
  const sizes = [18, 14, 12, 12, 12, 12, 12, 12, 12];
746
721
  const spacingBefore = level === 1 ? 0 : level === 2 ? 120 : level === 3 ? 60 : 120;
@@ -748,102 +723,102 @@ class Style {
748
723
  return new Style({
749
724
  styleId: `Heading${level}`,
750
725
  name: `Heading ${level}`,
751
- type: "paragraph",
752
- basedOn: "Normal",
753
- next: "Normal",
726
+ type: 'paragraph',
727
+ basedOn: 'Normal',
728
+ next: 'Normal',
754
729
  link: `Heading${level}Char`,
755
730
  qFormat: true,
756
731
  uiPriority: 9,
757
732
  paragraphFormatting: {
758
- alignment: "left",
733
+ alignment: 'left',
759
734
  spacing: {
760
735
  before: spacingBefore,
761
736
  after: spacingAfter,
762
737
  line: 240,
763
- lineRule: "auto",
738
+ lineRule: 'auto',
764
739
  },
765
740
  keepNext: true,
766
741
  keepLines: true,
767
742
  outlineLevel: level - 1,
768
743
  },
769
744
  runFormatting: {
770
- font: "Verdana",
745
+ font: 'Verdana',
771
746
  size: sizes[level - 1],
772
747
  bold: true,
773
- color: "000000",
748
+ color: '000000',
774
749
  },
775
750
  });
776
751
  }
777
752
  static createHeadingCharStyle(level) {
778
753
  if (level < 1 || level > 9) {
779
- throw new Error("Heading level must be between 1 and 9");
754
+ throw new Error('Heading level must be between 1 and 9');
780
755
  }
781
756
  const sizes = [18, 14, 12, 12, 12, 12, 12, 12, 12];
782
757
  return new Style({
783
758
  styleId: `Heading${level}Char`,
784
759
  name: `Heading ${level} Char`,
785
- type: "character",
760
+ type: 'character',
786
761
  link: `Heading${level}`,
787
762
  qFormat: true,
788
763
  uiPriority: 9,
789
764
  runFormatting: {
790
- font: "Verdana",
765
+ font: 'Verdana',
791
766
  size: sizes[level - 1],
792
767
  bold: true,
793
- color: "000000",
768
+ color: '000000',
794
769
  },
795
770
  });
796
771
  }
797
772
  static createTitleStyle() {
798
773
  return new Style({
799
- styleId: "Title",
800
- name: "Title",
801
- type: "paragraph",
802
- basedOn: "Normal",
803
- next: "Normal",
774
+ styleId: 'Title',
775
+ name: 'Title',
776
+ type: 'paragraph',
777
+ basedOn: 'Normal',
778
+ next: 'Normal',
804
779
  paragraphFormatting: {
805
780
  spacing: {
806
781
  after: 120,
807
782
  },
808
783
  },
809
784
  runFormatting: {
810
- font: "Verdana",
785
+ font: 'Verdana',
811
786
  size: 28,
812
- color: "000000",
787
+ color: '000000',
813
788
  },
814
789
  });
815
790
  }
816
791
  static createSubtitleStyle() {
817
792
  return new Style({
818
- styleId: "Subtitle",
819
- name: "Subtitle",
820
- type: "paragraph",
821
- basedOn: "Normal",
822
- next: "Normal",
793
+ styleId: 'Subtitle',
794
+ name: 'Subtitle',
795
+ type: 'paragraph',
796
+ basedOn: 'Normal',
797
+ next: 'Normal',
823
798
  paragraphFormatting: {
824
799
  spacing: {
825
800
  after: 120,
826
801
  },
827
802
  },
828
803
  runFormatting: {
829
- font: "Verdana",
804
+ font: 'Verdana',
830
805
  size: 14,
831
- color: "000000",
806
+ color: '000000',
832
807
  italic: true,
833
808
  },
834
809
  });
835
810
  }
836
811
  static createListParagraphStyle() {
837
812
  return new Style({
838
- styleId: "ListParagraph",
839
- name: "List Paragraph",
840
- type: "paragraph",
841
- basedOn: "Normal",
842
- next: "ListParagraph",
813
+ styleId: 'ListParagraph',
814
+ name: 'List Paragraph',
815
+ type: 'paragraph',
816
+ basedOn: 'Normal',
817
+ next: 'ListParagraph',
843
818
  qFormat: true,
844
819
  uiPriority: 34,
845
820
  paragraphFormatting: {
846
- alignment: "left",
821
+ alignment: 'left',
847
822
  indentation: {
848
823
  left: 720,
849
824
  hanging: 360,
@@ -852,29 +827,29 @@ class Style {
852
827
  before: 0,
853
828
  after: 60,
854
829
  line: 240,
855
- lineRule: "auto",
830
+ lineRule: 'auto',
856
831
  },
857
832
  contextualSpacing: true,
858
833
  },
859
834
  runFormatting: {
860
- font: "Verdana",
835
+ font: 'Verdana',
861
836
  size: 12,
862
- color: "000000",
837
+ color: '000000',
863
838
  },
864
839
  });
865
840
  }
866
841
  static createTOCHeadingStyle() {
867
842
  return new Style({
868
- styleId: "TOCHeading",
869
- name: "TOC Heading",
870
- type: "paragraph",
871
- basedOn: "Heading1",
872
- next: "Normal",
843
+ styleId: 'TOCHeading',
844
+ name: 'TOC Heading',
845
+ type: 'paragraph',
846
+ basedOn: 'Heading1',
847
+ next: 'Normal',
873
848
  runFormatting: {
874
849
  bold: true,
875
- font: "Verdana",
850
+ font: 'Verdana',
876
851
  size: 14,
877
- color: "000000",
852
+ color: '000000',
878
853
  },
879
854
  paragraphFormatting: {
880
855
  spacing: {
@@ -886,14 +861,14 @@ class Style {
886
861
  }
887
862
  static createTOCStyle(level, formatting) {
888
863
  if (level < 1 || level > 9) {
889
- throw new Error("TOC level must be between 1 and 9");
864
+ throw new Error('TOC level must be between 1 and 9');
890
865
  }
891
866
  const defaultLeftIndent = (level - 1) * 220;
892
867
  return Style.create({
893
868
  styleId: `TOC${level}`,
894
869
  name: `toc ${level}`,
895
- type: "paragraph",
896
- basedOn: "Normal",
870
+ type: 'paragraph',
871
+ basedOn: 'Normal',
897
872
  uiPriority: 39,
898
873
  semiHidden: true,
899
874
  unhideWhenUsed: true,
@@ -906,10 +881,10 @@ class Style {
906
881
  }
907
882
  static createTableNormalStyle() {
908
883
  return new Style({
909
- styleId: "TableNormal",
910
- name: "Table Normal",
911
- type: "table",
912
- basedOn: "Normal",
884
+ styleId: 'TableNormal',
885
+ name: 'Table Normal',
886
+ type: 'table',
887
+ basedOn: 'Normal',
913
888
  tableStyle: {
914
889
  table: {
915
890
  cellMargins: {
@@ -926,19 +901,19 @@ class Style {
926
901
  }
927
902
  static createTableGridStyle() {
928
903
  return new Style({
929
- styleId: "TableGrid",
930
- name: "Table Grid",
931
- type: "table",
932
- basedOn: "TableNormal",
904
+ styleId: 'TableGrid',
905
+ name: 'Table Grid',
906
+ type: 'table',
907
+ basedOn: 'TableNormal',
933
908
  tableStyle: {
934
909
  table: {
935
910
  borders: {
936
- top: { style: "single", size: 4, color: "000000" },
937
- bottom: { style: "single", size: 4, color: "000000" },
938
- left: { style: "single", size: 4, color: "000000" },
939
- right: { style: "single", size: 4, color: "000000" },
940
- insideH: { style: "single", size: 4, color: "000000" },
941
- insideV: { style: "single", size: 4, color: "000000" },
911
+ top: { style: 'single', size: 4, color: '000000' },
912
+ bottom: { style: 'single', size: 4, color: '000000' },
913
+ left: { style: 'single', size: 4, color: '000000' },
914
+ right: { style: 'single', size: 4, color: '000000' },
915
+ insideH: { style: 'single', size: 4, color: '000000' },
916
+ insideV: { style: 'single', size: 4, color: '000000' },
942
917
  },
943
918
  cellMargins: {
944
919
  top: 0,
@@ -973,16 +948,13 @@ class Style {
973
948
  this.properties.paragraphFormatting = {};
974
949
  }
975
950
  if (otherProps.paragraphFormatting.alignment) {
976
- this.properties.paragraphFormatting.alignment =
977
- otherProps.paragraphFormatting.alignment;
951
+ this.properties.paragraphFormatting.alignment = otherProps.paragraphFormatting.alignment;
978
952
  }
979
953
  if (otherProps.paragraphFormatting.keepNext !== undefined) {
980
- this.properties.paragraphFormatting.keepNext =
981
- otherProps.paragraphFormatting.keepNext;
954
+ this.properties.paragraphFormatting.keepNext = otherProps.paragraphFormatting.keepNext;
982
955
  }
983
956
  if (otherProps.paragraphFormatting.keepLines !== undefined) {
984
- this.properties.paragraphFormatting.keepLines =
985
- otherProps.paragraphFormatting.keepLines;
957
+ this.properties.paragraphFormatting.keepLines = otherProps.paragraphFormatting.keepLines;
986
958
  }
987
959
  if (otherProps.paragraphFormatting.pageBreakBefore !== undefined) {
988
960
  this.properties.paragraphFormatting.pageBreakBefore =