docxmlater 10.0.2 → 10.0.4

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 (398) hide show
  1. package/README.md +3 -2
  2. package/dist/constants/legacyCompatFlags.d.ts.map +1 -1
  3. package/dist/constants/legacyCompatFlags.js.map +1 -1
  4. package/dist/constants/limits.d.ts +0 -27
  5. package/dist/constants/limits.d.ts.map +1 -1
  6. package/dist/constants/limits.js +13 -13
  7. package/dist/constants/limits.js.map +1 -1
  8. package/dist/core/Document.d.ts +23 -19
  9. package/dist/core/Document.d.ts.map +1 -1
  10. package/dist/core/Document.js +197 -63
  11. package/dist/core/Document.js.map +1 -1
  12. package/dist/core/DocumentContent.d.ts.map +1 -1
  13. package/dist/core/DocumentContent.js.map +1 -1
  14. package/dist/core/DocumentGenerator.d.ts.map +1 -1
  15. package/dist/core/DocumentGenerator.js +59 -24
  16. package/dist/core/DocumentGenerator.js.map +1 -1
  17. package/dist/core/DocumentIdManager.d.ts.map +1 -1
  18. package/dist/core/DocumentIdManager.js.map +1 -1
  19. package/dist/core/DocumentParser.d.ts +6 -6
  20. package/dist/core/DocumentParser.d.ts.map +1 -1
  21. package/dist/core/DocumentParser.js +86 -55
  22. package/dist/core/DocumentParser.js.map +1 -1
  23. package/dist/core/DocumentValidator.d.ts.map +1 -1
  24. package/dist/core/DocumentValidator.js.map +1 -1
  25. package/dist/core/Relationship.d.ts.map +1 -1
  26. package/dist/core/Relationship.js +1 -1
  27. package/dist/core/Relationship.js.map +1 -1
  28. package/dist/core/RelationshipManager.js +3 -3
  29. package/dist/core/RelationshipManager.js.map +1 -1
  30. package/dist/elements/AlternateContent.js.map +1 -1
  31. package/dist/elements/Bookmark.d.ts.map +1 -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.js +1 -1
  36. package/dist/elements/Comment.js.map +1 -1
  37. package/dist/elements/CommentManager.d.ts.map +1 -1
  38. package/dist/elements/CommentManager.js +8 -2
  39. package/dist/elements/CommentManager.js.map +1 -1
  40. package/dist/elements/CommonTypes.d.ts.map +1 -1
  41. package/dist/elements/CommonTypes.js +1 -2
  42. package/dist/elements/CommonTypes.js.map +1 -1
  43. package/dist/elements/CustomXml.js.map +1 -1
  44. package/dist/elements/Endnote.d.ts.map +1 -1
  45. package/dist/elements/Endnote.js.map +1 -1
  46. package/dist/elements/EndnoteManager.d.ts.map +1 -1
  47. package/dist/elements/EndnoteManager.js.map +1 -1
  48. package/dist/elements/Field.d.ts.map +1 -1
  49. package/dist/elements/Field.js +31 -28
  50. package/dist/elements/Field.js.map +1 -1
  51. package/dist/elements/FieldHelpers.d.ts.map +1 -1
  52. package/dist/elements/FieldHelpers.js +6 -6
  53. package/dist/elements/FieldHelpers.js.map +1 -1
  54. package/dist/elements/FontManager.d.ts.map +1 -1
  55. package/dist/elements/FontManager.js.map +1 -1
  56. package/dist/elements/Footer.js.map +1 -1
  57. package/dist/elements/Footnote.d.ts.map +1 -1
  58. package/dist/elements/Footnote.js.map +1 -1
  59. package/dist/elements/FootnoteManager.d.ts.map +1 -1
  60. package/dist/elements/FootnoteManager.js.map +1 -1
  61. package/dist/elements/Header.js.map +1 -1
  62. package/dist/elements/HeaderFooterManager.js.map +1 -1
  63. package/dist/elements/Hyperlink.d.ts.map +1 -1
  64. package/dist/elements/Hyperlink.js +5 -5
  65. package/dist/elements/Hyperlink.js.map +1 -1
  66. package/dist/elements/Image.d.ts +2 -2
  67. package/dist/elements/Image.d.ts.map +1 -1
  68. package/dist/elements/Image.js +21 -5
  69. package/dist/elements/Image.js.map +1 -1
  70. package/dist/elements/ImageManager.d.ts.map +1 -1
  71. package/dist/elements/ImageManager.js +2 -2
  72. package/dist/elements/ImageManager.js.map +1 -1
  73. package/dist/elements/ImageRun.js.map +1 -1
  74. package/dist/elements/MathElement.js.map +1 -1
  75. package/dist/elements/Paragraph.d.ts +8 -0
  76. package/dist/elements/Paragraph.d.ts.map +1 -1
  77. package/dist/elements/Paragraph.js +153 -118
  78. package/dist/elements/Paragraph.js.map +1 -1
  79. package/dist/elements/PreservedElement.js.map +1 -1
  80. package/dist/elements/PropertyChangeTypes.js.map +1 -1
  81. package/dist/elements/RangeMarker.js.map +1 -1
  82. package/dist/elements/Revision.d.ts +1 -0
  83. package/dist/elements/Revision.d.ts.map +1 -1
  84. package/dist/elements/Revision.js +44 -5
  85. package/dist/elements/Revision.js.map +1 -1
  86. package/dist/elements/RevisionContent.js.map +1 -1
  87. package/dist/elements/RevisionManager.d.ts.map +1 -1
  88. package/dist/elements/RevisionManager.js.map +1 -1
  89. package/dist/elements/Run.d.ts.map +1 -1
  90. package/dist/elements/Run.js +1 -3
  91. package/dist/elements/Run.js.map +1 -1
  92. package/dist/elements/Section.d.ts.map +1 -1
  93. package/dist/elements/Section.js +127 -118
  94. package/dist/elements/Section.js.map +1 -1
  95. package/dist/elements/Shape.d.ts.map +1 -1
  96. package/dist/elements/Shape.js +21 -0
  97. package/dist/elements/Shape.js.map +1 -1
  98. package/dist/elements/StructuredDocumentTag.d.ts.map +1 -1
  99. package/dist/elements/StructuredDocumentTag.js +20 -8
  100. package/dist/elements/StructuredDocumentTag.js.map +1 -1
  101. package/dist/elements/Table.d.ts +2 -2
  102. package/dist/elements/Table.d.ts.map +1 -1
  103. package/dist/elements/Table.js +29 -35
  104. package/dist/elements/Table.js.map +1 -1
  105. package/dist/elements/TableCell.d.ts +2 -2
  106. package/dist/elements/TableCell.d.ts.map +1 -1
  107. package/dist/elements/TableCell.js +63 -67
  108. package/dist/elements/TableCell.js.map +1 -1
  109. package/dist/elements/TableGridChange.js.map +1 -1
  110. package/dist/elements/TableOfContents.d.ts +6 -6
  111. package/dist/elements/TableOfContents.d.ts.map +1 -1
  112. package/dist/elements/TableOfContents.js.map +1 -1
  113. package/dist/elements/TableOfContentsElement.js.map +1 -1
  114. package/dist/elements/TableRow.d.ts.map +1 -1
  115. package/dist/elements/TableRow.js +65 -47
  116. package/dist/elements/TableRow.js.map +1 -1
  117. package/dist/elements/TextBox.d.ts.map +1 -1
  118. package/dist/elements/TextBox.js +1 -1
  119. package/dist/elements/TextBox.js.map +1 -1
  120. package/dist/formatting/AbstractNumbering.d.ts +1 -1
  121. package/dist/formatting/AbstractNumbering.d.ts.map +1 -1
  122. package/dist/formatting/AbstractNumbering.js +11 -11
  123. package/dist/formatting/AbstractNumbering.js.map +1 -1
  124. package/dist/formatting/NumberingInstance.d.ts.map +1 -1
  125. package/dist/formatting/NumberingInstance.js +4 -4
  126. package/dist/formatting/NumberingInstance.js.map +1 -1
  127. package/dist/formatting/NumberingLevel.d.ts.map +1 -1
  128. package/dist/formatting/NumberingLevel.js +26 -26
  129. package/dist/formatting/NumberingLevel.js.map +1 -1
  130. package/dist/formatting/NumberingManager.d.ts +1 -1
  131. package/dist/formatting/NumberingManager.d.ts.map +1 -1
  132. package/dist/formatting/NumberingManager.js.map +1 -1
  133. package/dist/formatting/Style.d.ts.map +1 -1
  134. package/dist/formatting/Style.js +87 -95
  135. package/dist/formatting/Style.js.map +1 -1
  136. package/dist/formatting/StylesManager.d.ts +3 -3
  137. package/dist/formatting/StylesManager.d.ts.map +1 -1
  138. package/dist/formatting/StylesManager.js.map +1 -1
  139. package/dist/helpers/CleanupHelper.js.map +1 -1
  140. package/dist/images/ImageOptimizer.js.map +1 -1
  141. package/dist/index.js.map +1 -1
  142. package/dist/managers/DrawingManager.d.ts.map +1 -1
  143. package/dist/managers/DrawingManager.js.map +1 -1
  144. package/dist/tracking/DocumentTrackingContext.js.map +1 -1
  145. package/dist/tracking/TrackingContext.js.map +1 -1
  146. package/dist/types/compatibility-types.js.map +1 -1
  147. package/dist/types/formatting.js.map +1 -1
  148. package/dist/types/list-types.d.ts +4 -4
  149. package/dist/types/list-types.d.ts.map +1 -1
  150. package/dist/types/list-types.js.map +1 -1
  151. package/dist/types/settings-types.js.map +1 -1
  152. package/dist/types/styleConfig.js.map +1 -1
  153. package/dist/utils/ChangelogGenerator.d.ts.map +1 -1
  154. package/dist/utils/ChangelogGenerator.js.map +1 -1
  155. package/dist/utils/CompatibilityUpgrader.d.ts.map +1 -1
  156. package/dist/utils/CompatibilityUpgrader.js +7 -7
  157. package/dist/utils/CompatibilityUpgrader.js.map +1 -1
  158. package/dist/utils/InMemoryRevisionAcceptor.d.ts.map +1 -1
  159. package/dist/utils/InMemoryRevisionAcceptor.js +23 -2
  160. package/dist/utils/InMemoryRevisionAcceptor.js.map +1 -1
  161. package/dist/utils/MoveOperationHelper.js.map +1 -1
  162. package/dist/utils/RevisionAwareProcessor.js.map +1 -1
  163. package/dist/utils/RevisionWalker.js.map +1 -1
  164. package/dist/utils/SelectiveRevisionAcceptor.d.ts +1 -0
  165. package/dist/utils/SelectiveRevisionAcceptor.d.ts.map +1 -1
  166. package/dist/utils/SelectiveRevisionAcceptor.js +46 -0
  167. package/dist/utils/SelectiveRevisionAcceptor.js.map +1 -1
  168. package/dist/utils/ShadingResolver.js +1 -1
  169. package/dist/utils/ShadingResolver.js.map +1 -1
  170. package/dist/utils/acceptRevisions.d.ts +0 -28
  171. package/dist/utils/acceptRevisions.d.ts.map +1 -1
  172. package/dist/utils/acceptRevisions.js +5 -7
  173. package/dist/utils/acceptRevisions.js.map +1 -1
  174. package/dist/utils/cnfStyleDecoder.js +1 -1
  175. package/dist/utils/cnfStyleDecoder.js.map +1 -1
  176. package/dist/utils/corruptionDetection.js.map +1 -1
  177. package/dist/utils/dateFormatting.js.map +1 -1
  178. package/dist/utils/deepClone.d.ts +0 -1
  179. package/dist/utils/deepClone.d.ts.map +1 -1
  180. package/dist/utils/deepClone.js +0 -7
  181. package/dist/utils/deepClone.js.map +1 -1
  182. package/dist/utils/diagnostics.d.ts +2 -2
  183. package/dist/utils/diagnostics.d.ts.map +1 -1
  184. package/dist/utils/diagnostics.js.map +1 -1
  185. package/dist/utils/errorHandling.js.map +1 -1
  186. package/dist/utils/formatting.js.map +1 -1
  187. package/dist/utils/list-detection.d.ts +2 -2
  188. package/dist/utils/list-detection.d.ts.map +1 -1
  189. package/dist/utils/list-detection.js +3 -3
  190. package/dist/utils/list-detection.js.map +1 -1
  191. package/dist/utils/logger.d.ts +2 -4
  192. package/dist/utils/logger.d.ts.map +1 -1
  193. package/dist/utils/logger.js +0 -2
  194. package/dist/utils/logger.js.map +1 -1
  195. package/dist/utils/parsingHelpers.js.map +1 -1
  196. package/dist/utils/stripTrackedChanges.d.ts +0 -19
  197. package/dist/utils/stripTrackedChanges.d.ts.map +1 -1
  198. package/dist/utils/stripTrackedChanges.js +0 -2
  199. package/dist/utils/stripTrackedChanges.js.map +1 -1
  200. package/dist/utils/textDiff.js.map +1 -1
  201. package/dist/utils/units.js.map +1 -1
  202. package/dist/utils/validation.d.ts.map +1 -1
  203. package/dist/utils/validation.js.map +1 -1
  204. package/dist/utils/xmlSanitization.js.map +1 -1
  205. package/dist/validation/RevisionAutoFixer.js.map +1 -1
  206. package/dist/validation/RevisionValidator.js.map +1 -1
  207. package/dist/validation/ValidationRules.js.map +1 -1
  208. package/dist/validation/index.js.map +1 -1
  209. package/dist/xml/XMLBuilder.d.ts.map +1 -1
  210. package/dist/xml/XMLBuilder.js +10 -0
  211. package/dist/xml/XMLBuilder.js.map +1 -1
  212. package/dist/xml/XMLParser.d.ts.map +1 -1
  213. package/dist/xml/XMLParser.js +4 -5
  214. package/dist/xml/XMLParser.js.map +1 -1
  215. package/dist/zip/ZipHandler.js.map +1 -1
  216. package/dist/zip/ZipReader.js.map +1 -1
  217. package/dist/zip/ZipWriter.js.map +1 -1
  218. package/dist/zip/errors.js.map +1 -1
  219. package/dist/zip/types.js.map +1 -1
  220. package/package.json +34 -4
  221. package/src/__tests__/helper-methods.test.ts +512 -0
  222. package/src/constants/legacyCompatFlags.ts +138 -0
  223. package/src/constants/limits.ts +50 -0
  224. package/src/core/CLAUDE.md +109 -0
  225. package/src/core/Document.ts +15569 -0
  226. package/src/core/DocumentContent.ts +467 -0
  227. package/src/core/DocumentGenerator.ts +1104 -0
  228. package/src/core/DocumentIdManager.ts +158 -0
  229. package/src/core/DocumentParser.ts +10140 -0
  230. package/src/core/DocumentValidator.ts +372 -0
  231. package/src/core/Relationship.ts +367 -0
  232. package/src/core/RelationshipManager.ts +428 -0
  233. package/src/elements/AlternateContent.ts +42 -0
  234. package/src/elements/Bookmark.ts +210 -0
  235. package/src/elements/BookmarkManager.ts +250 -0
  236. package/src/elements/CLAUDE.md +126 -0
  237. package/src/elements/Comment.ts +359 -0
  238. package/src/elements/CommentManager.ts +502 -0
  239. package/src/elements/CommonTypes.ts +549 -0
  240. package/src/elements/CustomXml.ts +36 -0
  241. package/src/elements/Endnote.ts +217 -0
  242. package/src/elements/EndnoteManager.ts +249 -0
  243. package/src/elements/Field.ts +1233 -0
  244. package/src/elements/FieldHelpers.ts +333 -0
  245. package/src/elements/FontManager.ts +339 -0
  246. package/src/elements/Footer.ts +269 -0
  247. package/src/elements/Footnote.ts +217 -0
  248. package/src/elements/FootnoteManager.ts +249 -0
  249. package/src/elements/Header.ts +269 -0
  250. package/src/elements/HeaderFooterManager.ts +219 -0
  251. package/src/elements/Hyperlink.ts +1146 -0
  252. package/src/elements/Image.ts +1756 -0
  253. package/src/elements/ImageManager.ts +432 -0
  254. package/src/elements/ImageRun.ts +59 -0
  255. package/src/elements/MathElement.ts +65 -0
  256. package/src/elements/Paragraph.ts +4287 -0
  257. package/src/elements/PreservedElement.ts +53 -0
  258. package/src/elements/PropertyChangeTypes.ts +442 -0
  259. package/src/elements/RangeMarker.ts +400 -0
  260. package/src/elements/Revision.ts +1217 -0
  261. package/src/elements/RevisionContent.ts +73 -0
  262. package/src/elements/RevisionManager.ts +1070 -0
  263. package/src/elements/Run.ts +3068 -0
  264. package/src/elements/Section.ts +1421 -0
  265. package/src/elements/Shape.ts +873 -0
  266. package/src/elements/StructuredDocumentTag.ts +978 -0
  267. package/src/elements/Table.ts +2524 -0
  268. package/src/elements/TableCell.ts +1586 -0
  269. package/src/elements/TableGridChange.ts +151 -0
  270. package/src/elements/TableOfContents.ts +691 -0
  271. package/src/elements/TableOfContentsElement.ts +89 -0
  272. package/src/elements/TableRow.ts +906 -0
  273. package/src/elements/TextBox.ts +768 -0
  274. package/src/formatting/AbstractNumbering.ts +548 -0
  275. package/src/formatting/CLAUDE.md +74 -0
  276. package/src/formatting/NumberingInstance.ts +212 -0
  277. package/src/formatting/NumberingLevel.ts +1006 -0
  278. package/src/formatting/NumberingManager.ts +827 -0
  279. package/src/formatting/Style.ts +1833 -0
  280. package/src/formatting/StylesManager.ts +1005 -0
  281. package/src/helpers/CleanupHelper.ts +524 -0
  282. package/src/images/ImageOptimizer.ts +274 -0
  283. package/src/index.ts +554 -0
  284. package/src/managers/CLAUDE.md +47 -0
  285. package/src/managers/DrawingManager.ts +319 -0
  286. package/src/tracking/DocumentTrackingContext.ts +643 -0
  287. package/src/tracking/TrackingContext.ts +173 -0
  288. package/src/types/compatibility-types.ts +49 -0
  289. package/src/types/formatting.ts +210 -0
  290. package/src/types/list-types.ts +152 -0
  291. package/src/types/settings-types.ts +59 -0
  292. package/src/types/styleConfig.ts +189 -0
  293. package/src/utils/CLAUDE.md +153 -0
  294. package/src/utils/ChangelogGenerator.ts +1581 -0
  295. package/src/utils/CompatibilityUpgrader.ts +237 -0
  296. package/src/utils/InMemoryRevisionAcceptor.ts +696 -0
  297. package/src/utils/MoveOperationHelper.ts +238 -0
  298. package/src/utils/RevisionAwareProcessor.ts +526 -0
  299. package/src/utils/RevisionWalker.ts +457 -0
  300. package/src/utils/SelectiveRevisionAcceptor.ts +683 -0
  301. package/src/utils/ShadingResolver.ts +107 -0
  302. package/src/utils/acceptRevisions.ts +714 -0
  303. package/src/utils/cnfStyleDecoder.ts +217 -0
  304. package/src/utils/corruptionDetection.ts +345 -0
  305. package/src/utils/dateFormatting.ts +20 -0
  306. package/src/utils/deepClone.ts +78 -0
  307. package/src/utils/diagnostics.ts +129 -0
  308. package/src/utils/errorHandling.ts +80 -0
  309. package/src/utils/formatting.ts +213 -0
  310. package/src/utils/list-detection.ts +274 -0
  311. package/src/utils/logger.ts +404 -0
  312. package/src/utils/parsingHelpers.ts +190 -0
  313. package/src/utils/stripTrackedChanges.ts +353 -0
  314. package/src/utils/textDiff.ts +100 -0
  315. package/src/utils/units.ts +421 -0
  316. package/src/utils/validation.ts +542 -0
  317. package/src/utils/xmlSanitization.ts +182 -0
  318. package/src/validation/RevisionAutoFixer.ts +542 -0
  319. package/src/validation/RevisionValidator.ts +460 -0
  320. package/src/validation/ValidationRules.ts +338 -0
  321. package/src/validation/index.ts +30 -0
  322. package/src/xml/CLAUDE.md +65 -0
  323. package/src/xml/XMLBuilder.ts +871 -0
  324. package/src/xml/XMLParser.ts +919 -0
  325. package/src/zip/CLAUDE.md +55 -0
  326. package/src/zip/ZipHandler.ts +637 -0
  327. package/src/zip/ZipReader.ts +299 -0
  328. package/src/zip/ZipWriter.ts +390 -0
  329. package/src/zip/errors.ts +69 -0
  330. package/src/zip/types.ts +116 -0
  331. package/dist/core/ListNormalizer.d.ts +0 -23
  332. package/dist/core/ListNormalizer.d.ts.map +0 -1
  333. package/dist/core/ListNormalizer.js +0 -624
  334. package/dist/core/ListNormalizer.js.map +0 -1
  335. package/dist/images/index.d.ts +0 -2
  336. package/dist/images/index.d.ts.map +0 -1
  337. package/dist/images/index.js +0 -8
  338. package/dist/images/index.js.map +0 -1
  339. package/dist/ms-doc/cfb/CFBReader.d.ts +0 -35
  340. package/dist/ms-doc/cfb/CFBReader.d.ts.map +0 -1
  341. package/dist/ms-doc/cfb/CFBReader.js +0 -360
  342. package/dist/ms-doc/cfb/CFBReader.js.map +0 -1
  343. package/dist/ms-doc/converter/DocToDocxConverter.d.ts +0 -55
  344. package/dist/ms-doc/converter/DocToDocxConverter.d.ts.map +0 -1
  345. package/dist/ms-doc/converter/DocToDocxConverter.js +0 -324
  346. package/dist/ms-doc/converter/DocToDocxConverter.js.map +0 -1
  347. package/dist/ms-doc/fib/FIB.d.ts +0 -18
  348. package/dist/ms-doc/fib/FIB.d.ts.map +0 -1
  349. package/dist/ms-doc/fib/FIB.js +0 -342
  350. package/dist/ms-doc/fib/FIB.js.map +0 -1
  351. package/dist/ms-doc/fields/FieldParser.d.ts +0 -31
  352. package/dist/ms-doc/fields/FieldParser.d.ts.map +0 -1
  353. package/dist/ms-doc/fields/FieldParser.js +0 -266
  354. package/dist/ms-doc/fields/FieldParser.js.map +0 -1
  355. package/dist/ms-doc/images/PictureExtractor.d.ts +0 -22
  356. package/dist/ms-doc/images/PictureExtractor.d.ts.map +0 -1
  357. package/dist/ms-doc/images/PictureExtractor.js +0 -233
  358. package/dist/ms-doc/images/PictureExtractor.js.map +0 -1
  359. package/dist/ms-doc/index.d.ts +0 -20
  360. package/dist/ms-doc/index.d.ts.map +0 -1
  361. package/dist/ms-doc/index.js +0 -59
  362. package/dist/ms-doc/index.js.map +0 -1
  363. package/dist/ms-doc/properties/SPRM.d.ts +0 -210
  364. package/dist/ms-doc/properties/SPRM.d.ts.map +0 -1
  365. package/dist/ms-doc/properties/SPRM.js +0 -633
  366. package/dist/ms-doc/properties/SPRM.js.map +0 -1
  367. package/dist/ms-doc/sections/SectionParser.d.ts +0 -25
  368. package/dist/ms-doc/sections/SectionParser.d.ts.map +0 -1
  369. package/dist/ms-doc/sections/SectionParser.js +0 -214
  370. package/dist/ms-doc/sections/SectionParser.js.map +0 -1
  371. package/dist/ms-doc/styles/StyleSheet.d.ts +0 -23
  372. package/dist/ms-doc/styles/StyleSheet.d.ts.map +0 -1
  373. package/dist/ms-doc/styles/StyleSheet.js +0 -268
  374. package/dist/ms-doc/styles/StyleSheet.js.map +0 -1
  375. package/dist/ms-doc/subdocuments/SubdocumentParser.d.ts +0 -61
  376. package/dist/ms-doc/subdocuments/SubdocumentParser.d.ts.map +0 -1
  377. package/dist/ms-doc/subdocuments/SubdocumentParser.js +0 -208
  378. package/dist/ms-doc/subdocuments/SubdocumentParser.js.map +0 -1
  379. package/dist/ms-doc/tables/TableParser.d.ts +0 -29
  380. package/dist/ms-doc/tables/TableParser.d.ts.map +0 -1
  381. package/dist/ms-doc/tables/TableParser.js +0 -176
  382. package/dist/ms-doc/tables/TableParser.js.map +0 -1
  383. package/dist/ms-doc/text/PieceTable.d.ts +0 -21
  384. package/dist/ms-doc/text/PieceTable.d.ts.map +0 -1
  385. package/dist/ms-doc/text/PieceTable.js +0 -171
  386. package/dist/ms-doc/text/PieceTable.js.map +0 -1
  387. package/dist/ms-doc/types/Constants.d.ts +0 -99
  388. package/dist/ms-doc/types/Constants.d.ts.map +0 -1
  389. package/dist/ms-doc/types/Constants.js +0 -102
  390. package/dist/ms-doc/types/Constants.js.map +0 -1
  391. package/dist/ms-doc/types/DocTypes.d.ts +0 -368
  392. package/dist/ms-doc/types/DocTypes.d.ts.map +0 -1
  393. package/dist/ms-doc/types/DocTypes.js +0 -3
  394. package/dist/ms-doc/types/DocTypes.js.map +0 -1
  395. package/dist/tracking/index.d.ts +0 -3
  396. package/dist/tracking/index.d.ts.map +0 -1
  397. package/dist/tracking/index.js +0 -6
  398. package/dist/tracking/index.js.map +0 -1
@@ -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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","sourcesContent":["/**\r\n * TableOfContents - Represents a Table of Contents in a Word document\r\n *\r\n * A TOC is a special field that automatically generates a list of headings\r\n * based on heading styles (Heading1, Heading2, etc.) in the document.\r\n */\r\n\r\nimport { XMLBuilder, XMLElement } from '../xml/XMLBuilder';\r\n\r\n/**\r\n * TOC properties\r\n */\r\nexport interface TOCProperties {\r\n /** Title for the TOC (default: \"Table of Contents\") */\r\n title?: string;\r\n /** Heading levels to include (1-9, default: 1-3) */\r\n levels?: number;\r\n /** Specific styles to include (overrides levels if provided) */\r\n includeStyles?: { styleName: string; level: number }[];\r\n /** Whether to show page numbers (default: true) */\r\n showPageNumbers?: boolean;\r\n /** Whether to right-align page numbers (default: true) */\r\n rightAlignPageNumbers?: boolean;\r\n /** Whether to use hyperlinks instead of page numbers (default: false) */\r\n useHyperlinks?: boolean;\r\n /** Custom TOC style (default: built-in TOC style) */\r\n style?: string;\r\n /** Tab leader character (default: dot) */\r\n tabLeader?: 'dot' | 'hyphen' | 'underscore' | 'none';\r\n /** Custom field switches */\r\n fieldSwitches?: string;\r\n /** Hide page numbers in web layout with \\z switch (default: false) */\r\n hideInWebLayout?: boolean;\r\n /** Whether TOC entries should be numbered (default: false) */\r\n numbered?: boolean;\r\n /** Numbering format for TOC entries */\r\n numberingFormat?: 'decimal' | 'roman' | 'alpha';\r\n /** Remove all indentation from TOC entries (default: false) */\r\n noIndent?: boolean;\r\n /** Custom indents for each TOC level in twips */\r\n customIndents?: number[];\r\n /** Space between TOC entries in twips (default: 0) */\r\n spaceBetweenEntries?: number;\r\n /** Hyperlink color in hex format without # (default: 0000FF) */\r\n hyperlinkColor?: string;\r\n /** Original field instruction from loaded document (internal use) */\r\n originalFieldInstruction?: string;\r\n /** Enable automatic normalization of incomplete \\t switches (default: false) */\r\n normalizeFieldInstruction?: boolean;\r\n}\r\n\r\n/**\r\n * Represents a Table of Contents\r\n */\r\nexport class TableOfContents {\r\n private title: string;\r\n private levels: number;\r\n private includeStyles?: { styleName: string; level: number }[];\r\n private showPageNumbers: boolean;\r\n private useHyperlinks: boolean;\r\n private tabLeader: 'dot' | 'hyphen' | 'underscore' | 'none';\r\n private fieldSwitches?: string;\r\n private hideInWebLayout: boolean;\r\n private numbered: boolean;\r\n private numberingFormat: 'decimal' | 'roman' | 'alpha';\r\n private noIndent: boolean;\r\n private customIndents?: number[];\r\n private spaceBetweenEntries: number;\r\n private hyperlinkColor: string;\r\n private originalFieldInstruction?: string; // Preserve original instruction from loaded documents\r\n\r\n /**\r\n * Creates a new Table of Contents\r\n * @param properties TOC properties\r\n */\r\n constructor(properties: TOCProperties = {}) {\r\n this.title = properties.title || 'Table of Contents';\r\n this.levels = properties.levels || 3;\r\n this.includeStyles = properties.includeStyles;\r\n this.showPageNumbers = properties.showPageNumbers !== false;\r\n this.useHyperlinks = properties.useHyperlinks || false;\r\n this.tabLeader = properties.tabLeader || 'dot';\r\n this.fieldSwitches = properties.fieldSwitches;\r\n this.hideInWebLayout = properties.hideInWebLayout || false;\r\n this.numbered = properties.numbered || false;\r\n this.numberingFormat = properties.numberingFormat || 'decimal';\r\n this.noIndent = properties.noIndent || false;\r\n this.customIndents = properties.customIndents;\r\n this.spaceBetweenEntries = properties.spaceBetweenEntries || 0;\r\n this.hyperlinkColor = properties.hyperlinkColor || '0000FF';\r\n this.originalFieldInstruction = properties.originalFieldInstruction;\r\n }\r\n\r\n /**\r\n * Gets the TOC title\r\n */\r\n getTitle(): string {\r\n return this.title;\r\n }\r\n\r\n /**\r\n * Sets the TOC title\r\n */\r\n setTitle(title: string): this {\r\n this.title = title;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the number of heading levels to include\r\n */\r\n getLevels(): number {\r\n return this.levels;\r\n }\r\n\r\n /**\r\n * Sets the number of heading levels to include (1-9)\r\n */\r\n setLevels(levels: number): this {\r\n if (levels < 1 || levels > 9) {\r\n throw new Error('TOC levels must be between 1 and 9');\r\n }\r\n this.levels = levels;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets (or clears) the original field instruction preserved from a loaded document.\r\n * When set, this instruction is used verbatim in XML generation instead of\r\n * buildFieldInstruction(). Pass undefined to clear it and use computed instruction.\r\n */\r\n setOriginalFieldInstruction(instruction: string | undefined): this {\r\n this.originalFieldInstruction = instruction;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the original field instruction preserved from a loaded document, if any.\r\n */\r\n getOriginalFieldInstruction(): string | undefined {\r\n return this.originalFieldInstruction;\r\n }\r\n\r\n /**\r\n * Gets whether page numbers are shown\r\n */\r\n getShowPageNumbers(): boolean {\r\n return this.showPageNumbers;\r\n }\r\n\r\n /**\r\n * Sets whether to show page numbers\r\n */\r\n setShowPageNumbers(show: boolean): this {\r\n this.showPageNumbers = show;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets whether to use hyperlinks\r\n */\r\n getUseHyperlinks(): boolean {\r\n return this.useHyperlinks;\r\n }\r\n\r\n /**\r\n * Sets whether to use hyperlinks instead of page numbers\r\n */\r\n setUseHyperlinks(use: boolean): this {\r\n this.useHyperlinks = use;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets whether TOC entries are numbered\r\n */\r\n getNumbered(): boolean {\r\n return this.numbered;\r\n }\r\n\r\n /**\r\n * Gets the numbering format\r\n */\r\n getNumberingFormat(): 'decimal' | 'roman' | 'alpha' {\r\n return this.numberingFormat;\r\n }\r\n\r\n /**\r\n * Gets whether indentation is removed\r\n */\r\n getNoIndent(): boolean {\r\n return this.noIndent;\r\n }\r\n\r\n /**\r\n * Gets custom indents\r\n */\r\n getCustomIndents(): number[] | undefined {\r\n return this.customIndents;\r\n }\r\n\r\n /**\r\n * Gets spacing between entries\r\n */\r\n getSpaceBetweenEntries(): number {\r\n return this.spaceBetweenEntries;\r\n }\r\n\r\n /**\r\n * Gets hyperlink color\r\n */\r\n getHyperlinkColor(): string {\r\n return this.hyperlinkColor;\r\n }\r\n\r\n /**\r\n * Gets specific included styles\r\n */\r\n getIncludeStyles(): { styleName: string; level: number }[] | undefined {\r\n return this.includeStyles;\r\n }\r\n\r\n /**\r\n * Gets whether page numbers are hidden in web layout\r\n * @returns True if \\z switch will be generated\r\n */\r\n getHideInWebLayout(): boolean {\r\n return this.hideInWebLayout;\r\n }\r\n\r\n /**\r\n * Sets whether to hide page numbers in web layout\r\n * Generates the \\z field switch\r\n * @param hide - True to hide page numbers in web layout\r\n * @returns This instance for chaining\r\n */\r\n setHideInWebLayout(hide: boolean): this {\r\n this.hideInWebLayout = hide;\r\n return this;\r\n }\r\n\r\n /**\r\n * Builds the TOC field instruction string\r\n */\r\n private buildFieldInstruction(): string {\r\n let instruction = 'TOC';\r\n\r\n // Add specific styles switch OR heading levels switch\r\n if (this.includeStyles && this.includeStyles.length > 0) {\r\n // Use \\t switch to specify exact styles\r\n // Format: \\t \"StyleName,Level,\" for each style\r\n for (const style of this.includeStyles) {\r\n instruction += ` \\\\t \"${style.styleName},${style.level},\"`;\r\n }\r\n } else {\r\n // Use \\o switch for heading levels\r\n instruction += ` \\\\o \"1-${this.levels}\"`;\r\n }\r\n\r\n // Add hyperlinks switch if enabled\r\n if (this.useHyperlinks) {\r\n instruction += ' \\\\h';\r\n }\r\n\r\n // Add page number switches\r\n if (!this.showPageNumbers) {\r\n instruction += ' \\\\n';\r\n }\r\n\r\n // Add web layout hide switch\r\n if (this.hideInWebLayout) {\r\n instruction += ' \\\\z';\r\n }\r\n\r\n // Add tab leader switch\r\n if (this.tabLeader !== 'dot') {\r\n const leaderMap = {\r\n hyphen: 'h',\r\n underscore: 'u',\r\n none: 'n',\r\n };\r\n instruction += ` \\\\p \"${leaderMap[this.tabLeader]}\"`;\r\n }\r\n\r\n // Add custom field switches\r\n if (this.fieldSwitches) {\r\n instruction += ` ${this.fieldSwitches}`;\r\n }\r\n\r\n // Add MERGEFORMAT to preserve formatting\r\n instruction += ' \\\\* MERGEFORMAT';\r\n\r\n return instruction;\r\n }\r\n\r\n /**\r\n * Gets the TOC field instruction string\r\n * Public accessor for the field instruction\r\n *\r\n * @returns The complete TOC field instruction (e.g., \"TOC \\o \"1-3\" \\h \\z\")\r\n */\r\n public getFieldInstruction(): string {\r\n return this.buildFieldInstruction();\r\n }\r\n\r\n /**\r\n * Generates XML for the TOC field wrapped in an SDT (Structured Document Tag)\r\n *\r\n * A TOC in Word is represented as:\r\n * 1. SDT wrapper with docPartGallery=\"Table of Contents\"\r\n * 2. SDT content containing:\r\n * a. A paragraph with the title (styled as TOC Heading)\r\n * b. A complex field (fldChar) with the TOC instruction (begin → separate → end)\r\n * c. Placeholder entries (updated by Word when opening)\r\n *\r\n * Per ECMA-376 Part 1 §17.16.5: All complex fields MUST have\r\n * begin → instrText → separate → content → end structure.\r\n * Missing any of these causes Word to reject the document as corrupted.\r\n *\r\n * @throws Error if field structure cannot be generated completely\r\n */\r\n toXML(): XMLElement[] {\r\n const sdtContent: XMLElement[] = [];\r\n\r\n // 1. Title paragraph\r\n if (this.title) {\r\n sdtContent.push({\r\n name: 'w:p',\r\n children: [\r\n {\r\n name: 'w:pPr',\r\n children: [\r\n {\r\n name: 'w:pStyle',\r\n attributes: { 'w:val': 'TOCHeading' },\r\n selfClosing: true,\r\n },\r\n ],\r\n },\r\n {\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:t',\r\n children: [this.title],\r\n },\r\n ],\r\n },\r\n ],\r\n });\r\n }\r\n\r\n // 2. TOC field paragraph - CRITICAL: Must have complete begin → separate → end structure\r\n const tocParagraph: XMLElement = {\r\n name: 'w:p',\r\n children: [],\r\n };\r\n\r\n // FIELD BEGIN (required)\r\n tocParagraph.children!.push({\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:fldChar',\r\n attributes: { 'w:fldCharType': 'begin' },\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // FIELD INSTRUCTION (required)\r\n // Use original field instruction if available (from loaded documents)\r\n // Otherwise, build instruction from properties\r\n const fieldInstruction = this.originalFieldInstruction || this.buildFieldInstruction();\r\n tocParagraph.children!.push({\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:instrText',\r\n attributes: { 'xml:space': 'preserve' },\r\n children: [fieldInstruction],\r\n },\r\n ],\r\n });\r\n\r\n // FIELD SEPARATE (required - marks boundary between instruction and result)\r\n tocParagraph.children!.push({\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:fldChar',\r\n attributes: { 'w:fldCharType': 'separate' },\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // FIELD CONTENT (placeholder - Word updates on open)\r\n tocParagraph.children!.push({\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:rPr',\r\n children: [\r\n {\r\n name: 'w:noProof',\r\n selfClosing: true,\r\n },\r\n ],\r\n },\r\n {\r\n name: 'w:t',\r\n children: ['Right-click to update field.'],\r\n },\r\n ],\r\n });\r\n\r\n // FIELD END (CRITICAL - REQUIRED by ECMA-376 §17.16.5)\r\n // Missing this causes Word to treat document as corrupted\r\n tocParagraph.children!.push({\r\n name: 'w:r',\r\n children: [\r\n {\r\n name: 'w:fldChar',\r\n attributes: { 'w:fldCharType': 'end' },\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // Validate complete structure before adding to SDT content\r\n if (tocParagraph.children!.length !== 5) {\r\n throw new Error(\r\n `CRITICAL: TOC field structure incomplete. Expected 5 elements ` +\r\n `(begin, instruction, separate, content, end), got ${tocParagraph.children!.length}. ` +\r\n `This would create an invalid OpenXML document per ECMA-376 §17.16.5.`\r\n );\r\n }\r\n\r\n sdtContent.push(tocParagraph);\r\n\r\n // Wrap TOC content in SDT (Structured Document Tag) for Word native integration\r\n const sdtWrapper = XMLBuilder.createSDT(sdtContent, {\r\n docPartGallery: 'Table of Contents',\r\n docPartUnique: true\r\n });\r\n\r\n return [sdtWrapper];\r\n }\r\n\r\n /**\r\n * Creates a standard TOC with 3 levels\r\n */\r\n static createStandard(title?: string): TableOfContents {\r\n return new TableOfContents({\r\n title: title || 'Table of Contents',\r\n levels: 3,\r\n showPageNumbers: true,\r\n rightAlignPageNumbers: true,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a simple TOC with 2 levels\r\n */\r\n static createSimple(title?: string): TableOfContents {\r\n return new TableOfContents({\r\n title: title || 'Contents',\r\n levels: 2,\r\n showPageNumbers: true,\r\n rightAlignPageNumbers: true,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a detailed TOC with 4 levels\r\n */\r\n static createDetailed(title?: string): TableOfContents {\r\n return new TableOfContents({\r\n title: title || 'Table of Contents',\r\n levels: 4,\r\n showPageNumbers: true,\r\n rightAlignPageNumbers: true,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a hyperlinked TOC (for web documents)\r\n */\r\n static createHyperlinked(title?: string): TableOfContents {\r\n return new TableOfContents({\r\n title: title || 'Contents',\r\n levels: 3,\r\n showPageNumbers: false,\r\n useHyperlinks: true,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a hyperlinked TOC without page numbers\r\n * Combines \\h, \\n, and \\z switches for complete page number hiding\r\n * @param options - TOC configuration options\r\n * @returns New TableOfContents instance\r\n */\r\n static createNoPageNumbers(options: Partial<TOCProperties> = {}): TableOfContents {\r\n return new TableOfContents({\r\n ...options,\r\n useHyperlinks: true,\r\n showPageNumbers: false,\r\n hideInWebLayout: true,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a TOC with custom properties\r\n */\r\n static create(properties?: TOCProperties): TableOfContents {\r\n return new TableOfContents(properties);\r\n }\r\n\r\n /**\r\n * Sets specific styles to include in TOC (overrides levels)\r\n * @param styles - Array of style names (e.g., ['Heading1', 'Heading3']) or objects with styleName and level\r\n * @returns This TOC for chaining\r\n */\r\n setIncludeStyles(styles: string[] | { styleName: string; level: number }[]): this {\r\n // Convert string[] to object format for backward compatibility\r\n if (styles.length > 0 && typeof styles[0] === 'string') {\r\n this.includeStyles = (styles as string[]).map((styleName, index) => ({\r\n styleName,\r\n level: index + 1 // Default: assign sequential levels\r\n }));\r\n } else {\r\n this.includeStyles = styles as { styleName: string; level: number }[];\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets whether TOC entries should be numbered\r\n * @param numbered - Whether to number entries\r\n * @param format - Numbering format (decimal, roman, alpha)\r\n * @returns This TOC for chaining\r\n */\r\n setNumbered(numbered: boolean, format: 'decimal' | 'roman' | 'alpha' = 'decimal'): this {\r\n this.numbered = numbered;\r\n this.numberingFormat = format;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets whether to remove indentation from TOC entries\r\n * @param noIndent - Whether to remove indentation\r\n * @returns This TOC for chaining\r\n */\r\n setNoIndent(noIndent: boolean): this {\r\n this.noIndent = noIndent;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets custom indents for each TOC level\r\n * @param indents - Array of indent values in twips\r\n * @returns This TOC for chaining\r\n */\r\n setCustomIndents(indents: number[]): this {\r\n this.customIndents = indents;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets spacing between TOC entries\r\n * @param spacing - Spacing in twips\r\n * @returns This TOC for chaining\r\n */\r\n setSpaceBetweenEntries(spacing: number): this {\r\n this.spaceBetweenEntries = spacing;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets hyperlink color for TOC entries\r\n * @param color - Hex color without # (e.g., '0000FF' for blue)\r\n * @returns This TOC for chaining\r\n */\r\n setHyperlinkColor(color: string): this {\r\n this.hyperlinkColor = color;\r\n return this;\r\n }\r\n\r\n /**\r\n * Configures multiple properties at once\r\n * @param options - Partial TOC properties to apply\r\n * @returns This TOC for chaining\r\n */\r\n configure(options: Partial<TOCProperties>): this {\r\n if (options.title !== undefined) this.title = options.title;\r\n if (options.levels !== undefined) this.levels = options.levels;\r\n if (options.includeStyles !== undefined) this.includeStyles = options.includeStyles;\r\n if (options.showPageNumbers !== undefined) this.showPageNumbers = options.showPageNumbers;\r\n if (options.useHyperlinks !== undefined) this.useHyperlinks = options.useHyperlinks;\r\n if (options.tabLeader !== undefined) this.tabLeader = options.tabLeader;\r\n if (options.fieldSwitches !== undefined) this.fieldSwitches = options.fieldSwitches;\r\n if (options.hideInWebLayout !== undefined) this.hideInWebLayout = options.hideInWebLayout;\r\n if (options.numbered !== undefined) this.numbered = options.numbered;\r\n if (options.numberingFormat !== undefined) this.numberingFormat = options.numberingFormat;\r\n if (options.noIndent !== undefined) this.noIndent = options.noIndent;\r\n if (options.customIndents !== undefined) this.customIndents = options.customIndents;\r\n if (options.spaceBetweenEntries !== undefined) this.spaceBetweenEntries = options.spaceBetweenEntries;\r\n if (options.hyperlinkColor !== undefined) this.hyperlinkColor = options.hyperlinkColor;\r\n return this;\r\n }\r\n\r\n /**\r\n * Creates a TOC with specific styles\r\n * @param styles - Array of style names to include\r\n * @param options - Additional TOC options\r\n * @returns New TableOfContents instance\r\n */\r\n static createWithStyles(styles: string[], options?: Partial<TOCProperties>): TableOfContents {\r\n // Convert string[] to object format\r\n const stylesWithLevels = styles.map((styleName, index) => ({\r\n styleName,\r\n level: index + 1 // Default: assign sequential levels\r\n }));\r\n return new TableOfContents({\r\n ...options,\r\n includeStyles: stylesWithLevels,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a flat (no indent) TOC\r\n * @param title - Optional TOC title\r\n * @param styles - Optional specific styles (default: all heading levels)\r\n * @returns New TableOfContents instance\r\n */\r\n static createFlat(title?: string, styles?: string[]): TableOfContents {\r\n // Convert string[] to object format if provided\r\n const stylesWithLevels = styles?.map((styleName, index) => ({\r\n styleName,\r\n level: index + 1 // Default: assign sequential levels\r\n }));\r\n return new TableOfContents({\r\n title: title || 'Contents',\r\n includeStyles: stylesWithLevels,\r\n noIndent: true,\r\n spaceBetweenEntries: 100, // Small spacing for flat TOC\r\n });\r\n }\r\n\r\n /**\r\n * Creates a numbered TOC\r\n * @param title - Optional TOC title\r\n * @param format - Numbering format (decimal, roman, alpha)\r\n * @returns New TableOfContents instance\r\n */\r\n static createNumbered(title?: string, format: 'decimal' | 'roman' | 'alpha' = 'decimal'): TableOfContents {\r\n return new TableOfContents({\r\n title: title || 'Table of Contents',\r\n numbered: true,\r\n numberingFormat: format,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a TOC with custom spacing\r\n * @param spaceBetweenEntries - Spacing in twips\r\n * @param options - Additional TOC options\r\n * @returns New TableOfContents instance\r\n */\r\n static createWithSpacing(spaceBetweenEntries: number, options?: Partial<TOCProperties>): TableOfContents {\r\n return new TableOfContents({\r\n ...options,\r\n spaceBetweenEntries,\r\n });\r\n }\r\n\r\n /**\r\n * Creates a TOC with custom hyperlink color\r\n * @param color - Hex color without # (e.g., '0000FF' for blue)\r\n * @param options - Additional TOC options\r\n * @returns New TableOfContents instance\r\n */\r\n static createWithHyperlinkColor(color: string, options?: Partial<TOCProperties>): TableOfContents {\r\n return new TableOfContents({\r\n ...options,\r\n hyperlinkColor: color,\r\n });\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TableOfContentsElement.js","sourceRoot":"","sources":["../../src/elements/TableOfContentsElement.ts"],"names":[],"mappings":";;;AAUA,uDAAoD;AAMpD,MAAa,sBAAsB;IACzB,GAAG,CAAkB;IAM7B,YAAY,GAAoB;QAC9B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAMD,kBAAkB;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAOD,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAOD,MAAM,CAAC,MAAM,CAAC,GAAoB;QAChC,OAAO,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAOD,MAAM,CAAC,cAAc,CAAC,KAAc;QAClC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;IAOD,MAAM,CAAC,YAAY,CAAC,KAAc;QAChC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;IAOD,MAAM,CAAC,cAAc,CAAC,KAAc;QAClC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;IAOD,MAAM,CAAC,iBAAiB,CAAC,KAAc;QACrC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9E,CAAC;CACF;AAxED,wDAwEC"}
1
+ {"version":3,"file":"TableOfContentsElement.js","sourceRoot":"","sources":["../../src/elements/TableOfContentsElement.ts"],"names":[],"mappings":";;;AAUA,uDAAoD;AAMpD,MAAa,sBAAsB;IACzB,GAAG,CAAkB;IAM7B,YAAY,GAAoB;QAC9B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAMD,kBAAkB;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAOD,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAOD,MAAM,CAAC,MAAM,CAAC,GAAoB;QAChC,OAAO,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAOD,MAAM,CAAC,cAAc,CAAC,KAAc;QAClC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;IAOD,MAAM,CAAC,YAAY,CAAC,KAAc;QAChC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;IAOD,MAAM,CAAC,cAAc,CAAC,KAAc;QAClC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3E,CAAC;IAOD,MAAM,CAAC,iBAAiB,CAAC,KAAc;QACrC,OAAO,IAAI,sBAAsB,CAAC,iCAAe,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9E,CAAC;CACF;AAxED,wDAwEC","sourcesContent":["/**\r\n * TableOfContentsElement - Wrapper for TableOfContents to be used as body element\r\n *\r\n * This class wraps a TableOfContents instance to make it compatible with the\r\n * Document body elements array (Paragraph | Table | TableOfContentsElement).\r\n *\r\n * The TableOfContents generates multiple XML elements (title + field paragraphs),\r\n * so this wrapper handles the XML generation properly.\r\n */\r\n\r\nimport { TableOfContents } from './TableOfContents';\r\nimport { XMLElement } from '../xml/XMLBuilder';\r\n\r\n/**\r\n * Represents a Table of Contents element in a document body\r\n */\r\nexport class TableOfContentsElement {\r\n private toc: TableOfContents;\r\n\r\n /**\r\n * Creates a new TableOfContentsElement\r\n * @param toc The TableOfContents to wrap\r\n */\r\n constructor(toc: TableOfContents) {\r\n this.toc = toc;\r\n }\r\n\r\n /**\r\n * Gets the wrapped TableOfContents instance\r\n * @returns The TableOfContents\r\n */\r\n getTableOfContents(): TableOfContents {\r\n return this.toc;\r\n }\r\n\r\n /**\r\n * Generates XML elements for this TOC\r\n * Note: Returns an array since TOC generates multiple paragraphs\r\n * @returns Array of XML elements (title paragraph + field paragraph)\r\n */\r\n toXML(): XMLElement[] {\r\n return this.toc.toXML();\r\n }\r\n\r\n /**\r\n * Creates a TableOfContentsElement from a TableOfContents\r\n * @param toc The TableOfContents to wrap\r\n * @returns New TableOfContentsElement instance\r\n */\r\n static create(toc: TableOfContents): TableOfContentsElement {\r\n return new TableOfContentsElement(toc);\r\n }\r\n\r\n /**\r\n * Creates a standard TableOfContentsElement\r\n * @param title Optional custom title (default: \"Table of Contents\")\r\n * @returns New TableOfContentsElement with standard TOC\r\n */\r\n static createStandard(title?: string): TableOfContentsElement {\r\n return new TableOfContentsElement(TableOfContents.createStandard(title));\r\n }\r\n\r\n /**\r\n * Creates a simple TableOfContentsElement (2 levels, no hyperlinks)\r\n * @param title Optional custom title\r\n * @returns New TableOfContentsElement with simple TOC\r\n */\r\n static createSimple(title?: string): TableOfContentsElement {\r\n return new TableOfContentsElement(TableOfContents.createSimple(title));\r\n }\r\n\r\n /**\r\n * Creates a detailed TableOfContentsElement (4 levels)\r\n * @param title Optional custom title\r\n * @returns New TableOfContentsElement with detailed TOC\r\n */\r\n static createDetailed(title?: string): TableOfContentsElement {\r\n return new TableOfContentsElement(TableOfContents.createDetailed(title));\r\n }\r\n\r\n /**\r\n * Creates a hyperlinked TableOfContentsElement (no page numbers)\r\n * @param title Optional custom title\r\n * @returns New TableOfContentsElement with hyperlinked TOC\r\n */\r\n static createHyperlinked(title?: string): TableOfContentsElement {\r\n return new TableOfContentsElement(TableOfContents.createHyperlinked(title));\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.d.ts","sourceRoot":"","sources":["../../src/elements/TableRow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableRow.d.ts","sourceRoot":"","sources":["../../src/elements/TableRow.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TableRow = void 0;
4
4
  const TableCell_1 = require("./TableCell");
5
5
  const XMLBuilder_1 = require("../xml/XMLBuilder");
6
- const CommonTypes_1 = require("./CommonTypes");
7
6
  const logger_1 = require("../utils/logger");
8
7
  class TableRow {
9
8
  cells = [];
@@ -283,16 +282,32 @@ class TableRow {
283
282
  }
284
283
  }
285
284
  if (exceptions.shading) {
286
- const attrs = (0, CommonTypes_1.buildShadingAttributes)(exceptions.shading);
287
- if (Object.keys(attrs).length > 0) {
288
- children.push(XMLBuilder_1.XMLBuilder.wSelf('shd', attrs));
289
- }
285
+ const shdAttrs = {};
286
+ if (exceptions.shading.pattern)
287
+ shdAttrs['w:val'] = exceptions.shading.pattern;
288
+ if (exceptions.shading.color)
289
+ shdAttrs['w:color'] = exceptions.shading.color;
290
+ if (exceptions.shading.fill)
291
+ shdAttrs['w:fill'] = exceptions.shading.fill;
292
+ if (exceptions.shading.themeColor)
293
+ shdAttrs['w:themeColor'] = exceptions.shading.themeColor;
294
+ if (exceptions.shading.themeFill)
295
+ shdAttrs['w:themeFill'] = exceptions.shading.themeFill;
296
+ if (exceptions.shading.themeFillShade)
297
+ shdAttrs['w:themeFillShade'] = exceptions.shading.themeFillShade;
298
+ if (exceptions.shading.themeFillTint)
299
+ shdAttrs['w:themeFillTint'] = exceptions.shading.themeFillTint;
300
+ if (exceptions.shading.themeShade)
301
+ shdAttrs['w:themeShade'] = exceptions.shading.themeShade;
302
+ if (exceptions.shading.themeTint)
303
+ shdAttrs['w:themeTint'] = exceptions.shading.themeTint;
304
+ children.push(XMLBuilder_1.XMLBuilder.w('shd', shdAttrs));
290
305
  }
291
306
  return children;
292
307
  }
293
308
  buildBordersXML(borders) {
294
309
  const children = [];
295
- const borderNames = ['top', 'bottom', 'left', 'right', 'insideH', 'insideV'];
310
+ const borderNames = ['top', 'left', 'bottom', 'right', 'insideH', 'insideV'];
296
311
  for (const name of borderNames) {
297
312
  const border = borders[name];
298
313
  if (border) {
@@ -314,26 +329,8 @@ class TableRow {
314
329
  }
315
330
  toXML() {
316
331
  const trPrChildren = [];
317
- if (this.formatting.height !== undefined) {
318
- const attrs = {
319
- 'w:val': this.formatting.height,
320
- };
321
- if (this.formatting.heightRule) {
322
- attrs['w:hRule'] = this.formatting.heightRule;
323
- }
324
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('trHeight', attrs));
325
- }
326
- if (this.formatting.isHeader) {
327
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblHeader'));
328
- }
329
- if (this.formatting.cantSplit) {
330
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cantSplit'));
331
- }
332
- if (this.formatting.justification) {
333
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': this.formatting.justification }));
334
- }
335
- if (this.formatting.hidden) {
336
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('hidden'));
332
+ if (this.formatting.cnfStyle) {
333
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cnfStyle', { 'w:val': this.formatting.cnfStyle }));
337
334
  }
338
335
  if (this.formatting.gridBefore !== undefined) {
339
336
  trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('gridBefore', { 'w:val': this.formatting.gridBefore }));
@@ -353,14 +350,34 @@ class TableRow {
353
350
  'w:type': this.formatting.wAfterType || 'dxa',
354
351
  }));
355
352
  }
353
+ if (this.formatting.cantSplit) {
354
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cantSplit'));
355
+ }
356
+ if (this.formatting.height !== undefined) {
357
+ const attrs = {
358
+ 'w:val': this.formatting.height,
359
+ };
360
+ if (this.formatting.heightRule) {
361
+ attrs['w:hRule'] = this.formatting.heightRule;
362
+ }
363
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('trHeight', attrs));
364
+ }
365
+ if (this.formatting.isHeader) {
366
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblHeader'));
367
+ }
356
368
  if (this.formatting.cellSpacing !== undefined) {
357
369
  trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblCellSpacing', {
358
370
  'w:w': this.formatting.cellSpacing,
359
371
  'w:type': this.formatting.cellSpacingType || 'dxa',
360
372
  }));
361
373
  }
362
- if (this.formatting.cnfStyle) {
363
- trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cnfStyle', { 'w:val': this.formatting.cnfStyle }));
374
+ if (this.formatting.justification) {
375
+ const jcMap = { start: 'left', end: 'right' };
376
+ const jcVal = jcMap[this.formatting.justification] || this.formatting.justification;
377
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': jcVal }));
378
+ }
379
+ if (this.formatting.hidden) {
380
+ trPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('hidden'));
364
381
  }
365
382
  if (this.trPrChange) {
366
383
  const changeAttrs = {
@@ -371,23 +388,8 @@ class TableRow {
371
388
  const prevTrPrChildren = [];
372
389
  const prev = this.trPrChange.previousProperties;
373
390
  if (prev) {
374
- if (prev.height !== undefined) {
375
- const heightAttrs = { 'w:val': prev.height };
376
- if (prev.heightRule)
377
- heightAttrs['w:hRule'] = prev.heightRule;
378
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('trHeight', heightAttrs));
379
- }
380
- if (prev.isHeader) {
381
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblHeader'));
382
- }
383
- if (prev.cantSplit) {
384
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cantSplit'));
385
- }
386
- if (prev.justification) {
387
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': prev.justification }));
388
- }
389
- if (prev.hidden) {
390
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('hidden'));
391
+ if (prev.cnfStyle) {
392
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cnfStyle', { 'w:val': prev.cnfStyle }));
391
393
  }
392
394
  if (prev.gridBefore !== undefined) {
393
395
  prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('gridBefore', { 'w:val': prev.gridBefore }));
@@ -407,14 +409,30 @@ class TableRow {
407
409
  'w:type': prev.wAfterType || 'dxa',
408
410
  }));
409
411
  }
412
+ if (prev.cantSplit) {
413
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cantSplit'));
414
+ }
415
+ if (prev.height !== undefined) {
416
+ const heightAttrs = { 'w:val': prev.height };
417
+ if (prev.heightRule)
418
+ heightAttrs['w:hRule'] = prev.heightRule;
419
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('trHeight', heightAttrs));
420
+ }
421
+ if (prev.isHeader) {
422
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblHeader'));
423
+ }
410
424
  if (prev.cellSpacing !== undefined) {
411
425
  prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('tblCellSpacing', {
412
426
  'w:w': prev.cellSpacing,
413
427
  'w:type': prev.cellSpacingType || 'dxa',
414
428
  }));
415
429
  }
416
- if (prev.cnfStyle) {
417
- prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('cnfStyle', { 'w:val': prev.cnfStyle }));
430
+ if (prev.justification) {
431
+ const jcPrevMap = { start: 'left', end: 'right' };
432
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('jc', { 'w:val': jcPrevMap[prev.justification] || prev.justification }));
433
+ }
434
+ if (prev.hidden) {
435
+ prevTrPrChildren.push(XMLBuilder_1.XMLBuilder.wSelf('hidden'));
418
436
  }
419
437
  }
420
438
  const prevTrPr = XMLBuilder_1.XMLBuilder.w('trPr', undefined, prevTrPrChildren);
@@ -1 +1 @@
1
- {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["../../src/elements/TableRow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TableRow.js","sourceRoot":"","sources":["../../src/elements/TableRow.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * TableRow - Represents a row in a table\r\n */\r\n\r\nimport { TableCell } from './TableCell';\r\nimport { XMLBuilder, XMLElement } from '../xml/XMLBuilder';\r\nimport { TableBorder, TableBorders } from './Table';\r\nimport {\r\n BasicShadingPattern,\r\n RowJustification as CommonRowJustification,\r\n ShadingConfig,\r\n buildShadingAttributes,\r\n} from './CommonTypes';\r\nimport { defaultLogger } from '../utils/logger';\r\n\r\n// ============================================================================\r\n// RE-EXPORTED TYPES (for backward compatibility)\r\n// ============================================================================\r\n\r\n/**\r\n * Row justification/alignment options\r\n * @see CommonTypes.RowJustification\r\n */\r\nexport type RowJustification = CommonRowJustification;\r\n\r\n/**\r\n * Shading pattern values per ECMA-376\r\n * @see CommonTypes.BasicShadingPattern for the canonical definition\r\n */\r\nexport type ShadingPattern = BasicShadingPattern;\r\n\r\n/**\r\n * Shading configuration\r\n * @see ShadingConfig in CommonTypes.ts for the canonical definition\r\n */\r\nexport type Shading = ShadingConfig;\r\n\r\n/**\r\n * Table property exceptions - overrides table-level properties for this row\r\n * Per ECMA-376 Part 1 §17.4.61 (w:tblPrEx)\r\n */\r\nexport interface TablePropertyExceptions {\r\n /** Border overrides for this row */\r\n borders?: TableBorders;\r\n /** Shading override for this row */\r\n shading?: Shading;\r\n /** Cell spacing override in twips */\r\n cellSpacing?: number;\r\n /** Table width override in twips */\r\n width?: number;\r\n /** Table indentation override in twips */\r\n indentation?: number;\r\n /** Table justification override */\r\n justification?: RowJustification;\r\n}\r\n\r\n/**\r\n * Row formatting options\r\n */\r\nexport interface RowFormatting {\r\n height?: number; // Height in twips\r\n heightRule?: 'auto' | 'exact' | 'atLeast';\r\n isHeader?: boolean; // Whether this is a header row\r\n cantSplit?: boolean; // Prevent row from breaking across pages\r\n justification?: RowJustification; // Row justification/alignment\r\n hidden?: boolean; // Hide row\r\n gridBefore?: number; // Grid columns before first cell\r\n gridAfter?: number; // Grid columns after last cell\r\n tablePropertyExceptions?: TablePropertyExceptions; // Table property exceptions for this row\r\n wBefore?: number; // Width before row in twips (per ECMA-376 §17.4.83)\r\n wBeforeType?: string; // Width before type (dxa, pct, auto)\r\n wAfter?: number; // Width after row in twips (per ECMA-376 §17.4.82)\r\n wAfterType?: string; // Width after type (dxa, pct, auto)\r\n cellSpacing?: number; // Row-level cell spacing override in twips\r\n cellSpacingType?: string; // Cell spacing type (dxa, pct)\r\n cnfStyle?: string; // Conditional formatting bitmask (per ECMA-376 §17.3.1.8)\r\n}\r\n\r\n/**\r\n * Table row property change tracking (w:trPrChange)\r\n * Per ECMA-376 Part 1 §17.13.5.38\r\n */\r\nexport interface TrPrChange {\r\n author: string;\r\n date: string;\r\n id: string;\r\n previousProperties: Record<string, any>;\r\n}\r\n\r\n/**\r\n * Represents a table row\r\n */\r\nexport class TableRow {\r\n private cells: TableCell[] = [];\r\n private formatting: RowFormatting;\r\n /** Parent table reference (if row is inside a table) */\r\n private _parentTable?: import('./Table').Table;\r\n /** Tracking context for automatic change tracking */\r\n private trackingContext?: import('../tracking/TrackingContext').TrackingContext;\r\n /** Table row property change tracking (w:trPrChange) */\r\n private trPrChange?: TrPrChange;\r\n\r\n /**\r\n * Creates a new TableRow\r\n * @param cellCount - Number of cells to create (optional)\r\n * @param formatting - Row formatting options\r\n */\r\n constructor(cellCount?: number, formatting: RowFormatting = {}) {\r\n this.formatting = formatting;\r\n\r\n if (cellCount !== undefined && cellCount > 0) {\r\n for (let i = 0; i < cellCount; i++) {\r\n const cell = new TableCell();\r\n cell._setParentRow(this);\r\n this.cells.push(cell);\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Sets the tracking context for automatic change tracking.\r\n * Called by Document when track changes is enabled.\r\n * @internal\r\n */\r\n _setTrackingContext(context: import('../tracking/TrackingContext').TrackingContext): void {\r\n this.trackingContext = context;\r\n }\r\n\r\n /**\r\n * Gets the table row property change tracking info\r\n */\r\n getTrPrChange(): TrPrChange | undefined {\r\n return this.trPrChange;\r\n }\r\n\r\n /**\r\n * Sets the table row property change tracking info\r\n */\r\n setTrPrChange(change: TrPrChange | undefined): void {\r\n this.trPrChange = change;\r\n }\r\n\r\n /**\r\n * Clears the table row property change tracking\r\n */\r\n clearTrPrChange(): void {\r\n this.trPrChange = undefined;\r\n }\r\n\r\n /**\r\n * Adds a cell to the row\r\n * @param cell - Cell to add\r\n * @returns This row for chaining\r\n */\r\n addCell(cell: TableCell): this {\r\n this.cells.push(cell);\r\n cell._setParentRow(this);\r\n return this;\r\n }\r\n\r\n /**\r\n * Creates and adds a new cell\r\n * @param text - Optional text content for the cell\r\n * @returns The created cell\r\n */\r\n createCell(text?: string): TableCell {\r\n const cell = new TableCell();\r\n if (text) {\r\n cell.createParagraph(text);\r\n }\r\n this.cells.push(cell);\r\n cell._setParentRow(this);\r\n return cell;\r\n }\r\n\r\n /**\r\n * Gets a cell by index\r\n * @param index - Cell index (0-based)\r\n * @returns The cell at the index, or undefined\r\n */\r\n getCell(index: number): TableCell | undefined {\r\n return this.cells[index];\r\n }\r\n\r\n /**\r\n * Inserts a cell at the specified index\r\n * @param index - Position to insert (0-based)\r\n * @param cell - Cell to insert\r\n */\r\n insertCellAt(index: number, cell: TableCell): void {\r\n this.cells.splice(index, 0, cell);\r\n cell._setParentRow(this);\r\n }\r\n\r\n /**\r\n * Removes and returns the cell at the specified index\r\n * @param index - Position to remove (0-based)\r\n * @returns The removed cell, or undefined if index is out of bounds\r\n */\r\n removeCellAt(index: number): TableCell | undefined {\r\n if (index < 0 || index >= this.cells.length) return undefined;\r\n const removed = this.cells.splice(index, 1);\r\n const cell = removed[0];\r\n if (cell) cell._setParentRow(undefined);\r\n return cell;\r\n }\r\n\r\n /**\r\n * Gets all cells in the row\r\n * @returns Array of cells\r\n */\r\n getCells(): TableCell[] {\r\n return [...this.cells];\r\n }\r\n\r\n /**\r\n * Gets the number of cells in the row\r\n * @returns Number of cells\r\n */\r\n getCellCount(): number {\r\n return this.cells.length;\r\n }\r\n\r\n /**\r\n * Calculates the total grid span of the row (considering column spans)\r\n *\r\n * For tables with merged cells, this returns the number of logical columns\r\n * this row spans based on the columnSpan values of each cell.\r\n *\r\n * @returns Total grid span (sum of all cell spans, where unspanned cells count as 1)\r\n *\r\n * @example\r\n * ```typescript\r\n * // Row with 3 cells, middle one spanning 2 columns\r\n * const row = new TableRow();\r\n * row.createCell('A'); // span = 1\r\n * row.createCell('B').setColumnSpan(2); // span = 2\r\n * row.createCell('C'); // span = 1\r\n * row.getTotalGridSpan(); // Returns 4\r\n * ```\r\n */\r\n getTotalGridSpan(): number {\r\n let totalSpan = 0;\r\n for (const cell of this.cells) {\r\n const formatting = cell.getFormatting();\r\n totalSpan += formatting.columnSpan || 1;\r\n }\r\n return totalSpan;\r\n }\r\n\r\n /**\r\n * Validates the row's grid alignment\r\n *\r\n * Checks if the total grid span matches the expected column count.\r\n * Logs a warning if there's a mismatch, which can indicate:\r\n * - Missing cells (grid span < expected)\r\n * - Extra cells (grid span > expected)\r\n * - Incorrect columnSpan values\r\n *\r\n * @param expectedColumns - Expected number of columns in the table grid\r\n * @returns Object with validation result and details\r\n *\r\n * @example\r\n * ```typescript\r\n * const result = row.validateGridAlignment(4);\r\n * if (!result.isValid) {\r\n * console.log(result.message); // \"Row has 3 grid columns but expected 4\"\r\n * }\r\n * ```\r\n */\r\n validateGridAlignment(expectedColumns: number): {\r\n isValid: boolean;\r\n actualSpan: number;\r\n message?: string;\r\n } {\r\n const actualSpan = this.getTotalGridSpan();\r\n\r\n if (actualSpan === expectedColumns) {\r\n return { isValid: true, actualSpan };\r\n }\r\n\r\n const message =\r\n `Row grid alignment mismatch: has ${actualSpan} grid columns but expected ${expectedColumns}. ` +\r\n `Cell count: ${this.cells.length}. ` +\r\n (actualSpan < expectedColumns\r\n ? \"Missing cells or incorrect columnSpan values.\"\r\n : \"Extra cells or excessive columnSpan values.\");\r\n\r\n defaultLogger.warn(`[TableRow] ${message}`);\r\n\r\n return {\r\n isValid: false,\r\n actualSpan,\r\n message,\r\n };\r\n }\r\n\r\n /**\r\n * Sets row height\r\n * @param twips - Height in twips\r\n * @param rule - Height rule\r\n * @returns This row for chaining\r\n */\r\n setHeight(twips: number, rule: RowFormatting['heightRule'] = 'atLeast'): this {\r\n const prevHeight = this.formatting.height;\r\n const prevRule = this.formatting.heightRule;\r\n this.formatting.height = twips;\r\n this.formatting.heightRule = rule;\r\n if (this.trackingContext?.isEnabled()) {\r\n if (prevHeight !== twips) {\r\n this.trackingContext.trackTableChange(this, 'height', prevHeight, twips);\r\n }\r\n if (prevRule !== rule) {\r\n this.trackingContext.trackTableChange(this, 'heightRule', prevRule, rule);\r\n }\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Clears the row height, allowing Word to auto-size the row based on content\r\n * @returns This row for chaining\r\n */\r\n clearHeight(): this {\r\n delete this.formatting.height;\r\n delete this.formatting.heightRule;\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets whether this is a header row\r\n * @param isHeader - Whether this is a header row\r\n * @returns This row for chaining\r\n */\r\n setHeader(isHeader = true): this {\r\n const prev = this.formatting.isHeader;\r\n this.formatting.isHeader = isHeader;\r\n if (this.trackingContext?.isEnabled() && prev !== isHeader) {\r\n this.trackingContext.trackTableChange(this, 'isHeader', prev, isHeader);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets whether row can split across pages\r\n * @param cantSplit - Whether to prevent splitting\r\n * @returns This row for chaining\r\n */\r\n setCantSplit(cantSplit = true): this {\r\n const prev = this.formatting.cantSplit;\r\n this.formatting.cantSplit = cantSplit;\r\n if (this.trackingContext?.isEnabled() && prev !== cantSplit) {\r\n this.trackingContext.trackTableChange(this, 'cantSplit', prev, cantSplit);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets row justification/alignment\r\n * Per ECMA-376 Part 1 §17.4.79 (w:jc)\r\n * @param alignment - Row justification ('left' | 'center' | 'right' | 'start' | 'end')\r\n * @returns This row for chaining\r\n * @example\r\n * ```typescript\r\n * row.setJustification('center'); // Center-align the entire row\r\n * ```\r\n */\r\n setJustification(alignment: RowJustification): this {\r\n const prev = this.formatting.justification;\r\n this.formatting.justification = alignment;\r\n if (this.trackingContext?.isEnabled() && prev !== alignment) {\r\n this.trackingContext.trackTableChange(this, 'justification', prev, alignment);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets whether row is hidden\r\n * Per ECMA-376 Part 1 §17.4.23 (w:hidden)\r\n * @param hidden - Whether to hide the row\r\n * @returns This row for chaining\r\n * @example\r\n * ```typescript\r\n * row.setHidden(true); // Hide this row from display\r\n * ```\r\n */\r\n setHidden(hidden = true): this {\r\n const prev = this.formatting.hidden;\r\n this.formatting.hidden = hidden;\r\n if (this.trackingContext?.isEnabled() && prev !== hidden) {\r\n this.trackingContext.trackTableChange(this, 'hidden', prev, hidden);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets grid columns before first cell\r\n * Per ECMA-376 Part 1 §17.4.15 (w:gridBefore)\r\n * Specifies number of grid columns that must be skipped before the first cell\r\n * @param columns - Number of grid columns to skip before first cell\r\n * @returns This row for chaining\r\n * @example\r\n * ```typescript\r\n * row.setGridBefore(2); // Skip 2 columns before first cell\r\n * ```\r\n */\r\n setGridBefore(columns: number): this {\r\n const prev = this.formatting.gridBefore;\r\n this.formatting.gridBefore = columns;\r\n if (this.trackingContext?.isEnabled() && prev !== columns) {\r\n this.trackingContext.trackTableChange(this, 'gridBefore', prev, columns);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets grid columns after last cell\r\n * Per ECMA-376 Part 1 §17.4.14 (w:gridAfter)\r\n * Specifies number of grid columns that must be left after the last cell\r\n * @param columns - Number of grid columns to leave after last cell\r\n * @returns This row for chaining\r\n * @example\r\n * ```typescript\r\n * row.setGridAfter(1); // Leave 1 column after last cell\r\n * ```\r\n */\r\n setGridAfter(columns: number): this {\r\n const prev = this.formatting.gridAfter;\r\n this.formatting.gridAfter = columns;\r\n if (this.trackingContext?.isEnabled() && prev !== columns) {\r\n this.trackingContext.trackTableChange(this, 'gridAfter', prev, columns);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets table property exceptions for this row\r\n * Per ECMA-376 Part 1 §17.4.61 (w:tblPrEx)\r\n *\r\n * Allows this row to override table-level properties like borders, shading, and cell spacing.\r\n * Typically used when merging tables or preserving formatting from legacy documents.\r\n *\r\n * @param exceptions - Table property exceptions configuration\r\n * @returns This row for chaining\r\n * @example\r\n * ```typescript\r\n * // Override borders for this row\r\n * row.setTablePropertyExceptions({\r\n * borders: {\r\n * top: { style: 'single', size: 8, color: 'FF0000' },\r\n * bottom: { style: 'single', size: 8, color: 'FF0000' }\r\n * },\r\n * shading: { fill: 'FFFF00', pattern: 'clear' }\r\n * });\r\n * ```\r\n */\r\n setTablePropertyExceptions(exceptions: TablePropertyExceptions): this {\r\n const prev = this.formatting.tablePropertyExceptions;\r\n this.formatting.tablePropertyExceptions = exceptions;\r\n if (this.trackingContext?.isEnabled() && prev !== exceptions) {\r\n this.trackingContext.trackTableChange(this, 'tablePropertyExceptions', prev, exceptions);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets width before row (w:wBefore) per ECMA-376 Part 1 §17.4.83\r\n * @param width - Width in twips\r\n * @param type - Width type (dxa, pct, auto)\r\n * @returns This row for chaining\r\n */\r\n setWBefore(width: number, type = 'dxa'): this {\r\n const prevWidth = this.formatting.wBefore;\r\n const prevType = this.formatting.wBeforeType;\r\n this.formatting.wBefore = width;\r\n this.formatting.wBeforeType = type;\r\n if (this.trackingContext?.isEnabled()) {\r\n if (prevWidth !== width) {\r\n this.trackingContext.trackTableChange(this, 'wBefore', prevWidth, width);\r\n }\r\n if (prevType !== type) {\r\n this.trackingContext.trackTableChange(this, 'wBeforeType', prevType, type);\r\n }\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets width after row (w:wAfter) per ECMA-376 Part 1 §17.4.82\r\n * @param width - Width in twips\r\n * @param type - Width type (dxa, pct, auto)\r\n * @returns This row for chaining\r\n */\r\n setWAfter(width: number, type = 'dxa'): this {\r\n const prevWidth = this.formatting.wAfter;\r\n const prevType = this.formatting.wAfterType;\r\n this.formatting.wAfter = width;\r\n this.formatting.wAfterType = type;\r\n if (this.trackingContext?.isEnabled()) {\r\n if (prevWidth !== width) {\r\n this.trackingContext.trackTableChange(this, 'wAfter', prevWidth, width);\r\n }\r\n if (prevType !== type) {\r\n this.trackingContext.trackTableChange(this, 'wAfterType', prevType, type);\r\n }\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets row-level cell spacing override (w:tblCellSpacing on row)\r\n * @param spacing - Cell spacing in twips\r\n * @param type - Spacing type (dxa, pct)\r\n * @returns This row for chaining\r\n */\r\n setRowCellSpacing(spacing: number, type = 'dxa'): this {\r\n const prevSpacing = this.formatting.cellSpacing;\r\n const prevType = this.formatting.cellSpacingType;\r\n this.formatting.cellSpacing = spacing;\r\n this.formatting.cellSpacingType = type;\r\n if (this.trackingContext?.isEnabled()) {\r\n if (prevSpacing !== spacing) {\r\n this.trackingContext.trackTableChange(this, 'cellSpacing', prevSpacing, spacing);\r\n }\r\n if (prevType !== type) {\r\n this.trackingContext.trackTableChange(this, 'cellSpacingType', prevType, type);\r\n }\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Sets conditional formatting bitmask for this row (w:cnfStyle)\r\n * Per ECMA-376 Part 1 §17.3.1.8\r\n * @param cnfStyle - Binary string (e.g., '100000000000' for firstRow)\r\n * @returns This row for chaining\r\n */\r\n setCnfStyle(cnfStyle: string): this {\r\n const prev = this.formatting.cnfStyle;\r\n this.formatting.cnfStyle = cnfStyle;\r\n if (this.trackingContext?.isEnabled() && prev !== cnfStyle) {\r\n this.trackingContext.trackTableChange(this, 'cnfStyle', prev, cnfStyle);\r\n }\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets table property exceptions\r\n * @returns Table property exceptions or undefined\r\n */\r\n getTablePropertyExceptions(): TablePropertyExceptions | undefined {\r\n return this.formatting.tablePropertyExceptions;\r\n }\r\n\r\n /**\r\n * Gets the row formatting\r\n * @returns Row formatting\r\n */\r\n getFormatting(): RowFormatting {\r\n return { ...this.formatting };\r\n }\r\n\r\n // ============================================================================\r\n // Individual Formatting Getters\r\n // ============================================================================\r\n\r\n /**\r\n * Gets the row height in twips\r\n * @returns Height in twips or undefined if not set\r\n */\r\n getHeight(): number | undefined {\r\n return this.formatting.height;\r\n }\r\n\r\n /**\r\n * Gets the row height rule\r\n * @returns Height rule ('auto', 'exact', 'atLeast') or undefined\r\n */\r\n getHeightRule(): string | undefined {\r\n return this.formatting.heightRule;\r\n }\r\n\r\n /**\r\n * Checks if this row is marked as a header row\r\n * @returns True if this is a header row\r\n */\r\n getIsHeader(): boolean {\r\n return this.formatting.isHeader ?? false;\r\n }\r\n\r\n /**\r\n * Gets whether the row can split across pages\r\n * @returns True if row cannot split\r\n */\r\n getCantSplit(): boolean {\r\n return this.formatting.cantSplit ?? false;\r\n }\r\n\r\n /**\r\n * Gets the row justification (alignment)\r\n * @returns Justification ('left', 'center', 'right') or undefined\r\n */\r\n getJustification(): string | undefined {\r\n return this.formatting.justification;\r\n }\r\n\r\n /**\r\n * Checks if this row is hidden\r\n * @returns True if row is hidden\r\n */\r\n isHidden(): boolean {\r\n return this.formatting.hidden ?? false;\r\n }\r\n\r\n /**\r\n * Sets the parent table reference for this row.\r\n * Called by Table when adding rows.\r\n * @internal\r\n */\r\n _setParentTable(table: import('./Table').Table | undefined): void {\r\n this._parentTable = table;\r\n }\r\n\r\n /**\r\n * Gets the parent table reference for this row.\r\n * @internal\r\n */\r\n _getParentTable(): import('./Table').Table | undefined {\r\n return this._parentTable;\r\n }\r\n\r\n /**\r\n * Builds XML for table property exceptions\r\n * Per ECMA-376 Part 1 §17.4.61\r\n * @private\r\n */\r\n private buildTablePropertyExceptionsXML(exceptions: TablePropertyExceptions): XMLElement[] {\r\n const children: XMLElement[] = [];\r\n\r\n // Add table width exception (w:tblW)\r\n if (exceptions.width !== undefined) {\r\n children.push(XMLBuilder.wSelf('tblW', {\r\n 'w:w': exceptions.width,\r\n 'w:type': 'dxa'\r\n }));\r\n }\r\n\r\n // Add table justification exception (w:jc)\r\n if (exceptions.justification) {\r\n children.push(XMLBuilder.wSelf('jc', { 'w:val': exceptions.justification }));\r\n }\r\n\r\n // Add cell spacing exception (w:tblCellSpacing)\r\n if (exceptions.cellSpacing !== undefined) {\r\n children.push(XMLBuilder.wSelf('tblCellSpacing', {\r\n 'w:w': exceptions.cellSpacing,\r\n 'w:type': 'dxa'\r\n }));\r\n }\r\n\r\n // Add table indentation exception (w:tblInd)\r\n if (exceptions.indentation !== undefined) {\r\n children.push(XMLBuilder.wSelf('tblInd', {\r\n 'w:w': exceptions.indentation,\r\n 'w:type': 'dxa'\r\n }));\r\n }\r\n\r\n // Add table borders exception (w:tblBorders)\r\n if (exceptions.borders) {\r\n const borderChildren = this.buildBordersXML(exceptions.borders);\r\n if (borderChildren.length > 0) {\r\n children.push(XMLBuilder.w('tblBorders', undefined, borderChildren));\r\n }\r\n }\r\n\r\n // Add shading exception (w:shd)\r\n if (exceptions.shading) {\r\n const shdAttrs: Record<string, string> = {};\r\n if (exceptions.shading.pattern) shdAttrs['w:val'] = exceptions.shading.pattern;\r\n if (exceptions.shading.color) shdAttrs['w:color'] = exceptions.shading.color;\r\n if (exceptions.shading.fill) shdAttrs['w:fill'] = exceptions.shading.fill;\r\n if (exceptions.shading.themeColor) shdAttrs['w:themeColor'] = exceptions.shading.themeColor;\r\n if (exceptions.shading.themeFill) shdAttrs['w:themeFill'] = exceptions.shading.themeFill;\r\n if (exceptions.shading.themeFillShade) shdAttrs['w:themeFillShade'] = exceptions.shading.themeFillShade;\r\n if (exceptions.shading.themeFillTint) shdAttrs['w:themeFillTint'] = exceptions.shading.themeFillTint;\r\n if (exceptions.shading.themeShade) shdAttrs['w:themeShade'] = exceptions.shading.themeShade;\r\n if (exceptions.shading.themeTint) shdAttrs['w:themeTint'] = exceptions.shading.themeTint;\r\n children.push(XMLBuilder.w('shd', shdAttrs));\r\n }\r\n\r\n return children;\r\n }\r\n\r\n /**\r\n * Builds XML for table borders\r\n * @private\r\n */\r\n private buildBordersXML(borders: TableBorders): XMLElement[] {\r\n const children: XMLElement[] = [];\r\n\r\n const borderNames: (keyof TableBorders)[] = ['top', 'left', 'bottom', 'right', 'insideH', 'insideV'];\r\n\r\n for (const name of borderNames) {\r\n const border = borders[name];\r\n if (border) {\r\n const attrs: Record<string, string | number> = {};\r\n if (border.style) attrs['w:val'] = border.style;\r\n if (border.size !== undefined) attrs['w:sz'] = border.size;\r\n if (border.space !== undefined) attrs['w:space'] = border.space;\r\n if (border.color) attrs['w:color'] = border.color;\r\n\r\n if (Object.keys(attrs).length > 0) {\r\n children.push(XMLBuilder.wSelf(name, attrs));\r\n }\r\n }\r\n }\r\n\r\n return children;\r\n }\r\n\r\n /**\r\n * Converts the row to WordprocessingML XML element\r\n * @returns XMLElement representing the row\r\n */\r\n toXML(): XMLElement {\r\n const trPrChildren: XMLElement[] = [];\r\n\r\n // Ordered per CT_TrPr (ECMA-376 §17.4.79):\r\n // cnfStyle → divId → gridBefore → gridAfter → wBefore → wAfter →\r\n // cantSplit → trHeight → tblHeader → tblCellSpacing → jc → hidden\r\n\r\n // 1. cnfStyle (conditional formatting bitmask)\r\n if (this.formatting.cnfStyle) {\r\n trPrChildren.push(XMLBuilder.wSelf('cnfStyle', { 'w:val': this.formatting.cnfStyle }));\r\n }\r\n\r\n // 2. (divId not supported)\r\n\r\n // 3. gridBefore\r\n if (this.formatting.gridBefore !== undefined) {\r\n trPrChildren.push(XMLBuilder.wSelf('gridBefore', { 'w:val': this.formatting.gridBefore }));\r\n }\r\n\r\n // 4. gridAfter\r\n if (this.formatting.gridAfter !== undefined) {\r\n trPrChildren.push(XMLBuilder.wSelf('gridAfter', { 'w:val': this.formatting.gridAfter }));\r\n }\r\n\r\n // 5. wBefore\r\n if (this.formatting.wBefore !== undefined) {\r\n trPrChildren.push(XMLBuilder.wSelf('wBefore', {\r\n 'w:w': this.formatting.wBefore,\r\n 'w:type': this.formatting.wBeforeType || 'dxa',\r\n }));\r\n }\r\n\r\n // 6. wAfter\r\n if (this.formatting.wAfter !== undefined) {\r\n trPrChildren.push(XMLBuilder.wSelf('wAfter', {\r\n 'w:w': this.formatting.wAfter,\r\n 'w:type': this.formatting.wAfterType || 'dxa',\r\n }));\r\n }\r\n\r\n // 7. cantSplit\r\n if (this.formatting.cantSplit) {\r\n trPrChildren.push(XMLBuilder.wSelf('cantSplit'));\r\n }\r\n\r\n // 8. trHeight\r\n if (this.formatting.height !== undefined) {\r\n const attrs: Record<string, string | number> = {\r\n 'w:val': this.formatting.height,\r\n };\r\n if (this.formatting.heightRule) {\r\n attrs['w:hRule'] = this.formatting.heightRule;\r\n }\r\n trPrChildren.push(XMLBuilder.wSelf('trHeight', attrs));\r\n }\r\n\r\n // 9. tblHeader\r\n if (this.formatting.isHeader) {\r\n trPrChildren.push(XMLBuilder.wSelf('tblHeader'));\r\n }\r\n\r\n // 10. tblCellSpacing\r\n if (this.formatting.cellSpacing !== undefined) {\r\n trPrChildren.push(XMLBuilder.wSelf('tblCellSpacing', {\r\n 'w:w': this.formatting.cellSpacing,\r\n 'w:type': this.formatting.cellSpacingType || 'dxa',\r\n }));\r\n }\r\n\r\n // 11. jc (map 'start'/'end' to valid ST_JcTable values)\r\n if (this.formatting.justification) {\r\n const jcMap: Record<string, string> = { start: 'left', end: 'right' };\r\n const jcVal = jcMap[this.formatting.justification] || this.formatting.justification;\r\n trPrChildren.push(XMLBuilder.wSelf('jc', { 'w:val': jcVal }));\r\n }\r\n\r\n // 12. hidden\r\n if (this.formatting.hidden) {\r\n trPrChildren.push(XMLBuilder.wSelf('hidden'));\r\n }\r\n\r\n // Add table row property change (w:trPrChange) per ECMA-376 Part 1 §17.13.5.38\r\n // Must be last child of w:trPr\r\n if (this.trPrChange) {\r\n const changeAttrs: Record<string, string | number> = {\r\n 'w:id': this.trPrChange.id,\r\n 'w:author': this.trPrChange.author,\r\n 'w:date': this.trPrChange.date,\r\n };\r\n const prevTrPrChildren: XMLElement[] = [];\r\n const prev = this.trPrChange.previousProperties;\r\n if (prev) {\r\n // Ordered per CT_TrPr: cnfStyle → gridBefore → gridAfter → wBefore → wAfter →\r\n // cantSplit → trHeight → tblHeader → tblCellSpacing → jc → hidden\r\n if (prev.cnfStyle) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('cnfStyle', { 'w:val': prev.cnfStyle }));\r\n }\r\n if (prev.gridBefore !== undefined) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('gridBefore', { 'w:val': prev.gridBefore }));\r\n }\r\n if (prev.gridAfter !== undefined) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('gridAfter', { 'w:val': prev.gridAfter }));\r\n }\r\n if (prev.wBefore !== undefined) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('wBefore', {\r\n 'w:w': prev.wBefore,\r\n 'w:type': prev.wBeforeType || 'dxa',\r\n }));\r\n }\r\n if (prev.wAfter !== undefined) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('wAfter', {\r\n 'w:w': prev.wAfter,\r\n 'w:type': prev.wAfterType || 'dxa',\r\n }));\r\n }\r\n if (prev.cantSplit) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('cantSplit'));\r\n }\r\n if (prev.height !== undefined) {\r\n const heightAttrs: Record<string, string | number> = { 'w:val': prev.height };\r\n if (prev.heightRule) heightAttrs['w:hRule'] = prev.heightRule;\r\n prevTrPrChildren.push(XMLBuilder.wSelf('trHeight', heightAttrs));\r\n }\r\n if (prev.isHeader) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('tblHeader'));\r\n }\r\n if (prev.cellSpacing !== undefined) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('tblCellSpacing', {\r\n 'w:w': prev.cellSpacing,\r\n 'w:type': prev.cellSpacingType || 'dxa',\r\n }));\r\n }\r\n if (prev.justification) {\r\n const jcPrevMap: Record<string, string> = { start: 'left', end: 'right' };\r\n prevTrPrChildren.push(XMLBuilder.wSelf('jc', { 'w:val': jcPrevMap[prev.justification] || prev.justification }));\r\n }\r\n if (prev.hidden) {\r\n prevTrPrChildren.push(XMLBuilder.wSelf('hidden'));\r\n }\r\n }\r\n const prevTrPr = XMLBuilder.w('trPr', undefined, prevTrPrChildren);\r\n trPrChildren.push(XMLBuilder.w('trPrChange', changeAttrs, [prevTrPr]));\r\n }\r\n\r\n // Build row element\r\n const rowChildren: XMLElement[] = [];\r\n\r\n // Add row properties if there are any\r\n if (trPrChildren.length > 0) {\r\n rowChildren.push(XMLBuilder.w('trPr', undefined, trPrChildren));\r\n }\r\n\r\n // Add table property exceptions (tblPrEx) if present\r\n if (this.formatting.tablePropertyExceptions) {\r\n const tblPrExChildren = this.buildTablePropertyExceptionsXML(this.formatting.tablePropertyExceptions);\r\n if (tblPrExChildren.length > 0) {\r\n rowChildren.push(XMLBuilder.w('tblPrEx', undefined, tblPrExChildren));\r\n }\r\n }\r\n\r\n // Add all cells - each cell is independent\r\n // Note: gridSpan (columnSpan) means a single cell spans multiple columns in the grid,\r\n // it does NOT mean subsequent cells should be skipped. Each cell in the array\r\n // represents a distinct cell that should be output to the XML.\r\n for (const cell of this.cells) {\r\n rowChildren.push(cell.toXML());\r\n }\r\n\r\n return XMLBuilder.w('tr', undefined, rowChildren);\r\n }\r\n\r\n /**\r\n * Creates a new TableRow\r\n * @param cellCount - Number of cells to create\r\n * @param formatting - Row formatting\r\n * @returns New TableRow instance\r\n */\r\n static create(cellCount?: number, formatting?: RowFormatting): TableRow {\r\n return new TableRow(cellCount, formatting);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TextBox.d.ts","sourceRoot":"","sources":["../../src/elements/TextBox.ts"],"names":[],"mappings":"AAUA,OAAO,EAAc,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAK/C,MAAM,WAAW,cAAc;IAE7B,GAAG,EAAE,MAAM,CAAC;IAEZ,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;CACf;AAKD,MAAM,WAAW,WAAW;IAE1B,KAAK,EAAE,MAAM,CAAC;IAEd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAKD,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,MAAM,CAAC;IAEd,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IAEzB,QAAQ,CAAC,EAAE,aAAa,CAAC;IAEzB,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAE3B,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,qBAAa,OAAO;IAClB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,IAAI,CAAC,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAmB;IACnC,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAa;IAO5B,OAAO;IAuBP,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAQrD,QAAQ,IAAI,MAAM;IAQlB,SAAS,IAAI,MAAM;IASnB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IASxC,aAAa,IAAI,SAAS,EAAE;IAU5B,WAAW,CACT,UAAU,EAAE;QAAE,MAAM,EAAE,cAAc,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,mBAAmB,CAAA;KAAE,EACxF,QAAQ,EAAE;QAAE,MAAM,EAAE,cAAc,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,iBAAiB,CAAA;KAAE,GACnF,IAAI;IASP,WAAW,IAAI,aAAa,GAAG,SAAS;IASxC,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IASrC,SAAS,IAAI,WAAW,GAAG,SAAS;IAUpC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IASnD,OAAO,IAAI,WAAW,GAAG,SAAS;IASlC,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAS3C,UAAU,IAAI,gBAAgB,GAAG,SAAS;IAS1C,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IASzC,UAAU,IAAI,cAAc,GAAG,SAAS;IASxC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAS3B,OAAO,IAAI,MAAM;IASjB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IASzC,cAAc,IAAI,MAAM;IASxB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS5B,UAAU,IAAI,OAAO;IASrB,KAAK,IAAI,UAAU;IAYnB,OAAO,CAAC,YAAY;IA6DpB,OAAO,CAAC,YAAY;IAwIpB,OAAO,CAAC,aAAa;IAsBrB,OAAO,CAAC,SAAS;IAoCjB,OAAO,CAAC,YAAY;IA2BpB,OAAO,CAAC,UAAU;IAoIlB,OAAO,CAAC,oBAAoB;CAiC7B"}
1
+ {"version":3,"file":"TextBox.d.ts","sourceRoot":"","sources":["../../src/elements/TextBox.ts"],"names":[],"mappings":"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"}
@@ -385,7 +385,7 @@ class TextBox {
385
385
  selfClosing: true,
386
386
  });
387
387
  }
388
- if (this.borders && this.borders.size !== undefined) {
388
+ if (this.borders?.size !== undefined) {
389
389
  const lnAttrs = {
390
390
  w: (this.borders.size * units_1.UNITS.EMUS_PER_POINT).toString(),
391
391
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TextBox.js","sourceRoot":"","sources":["../../src/elements/TextBox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextBox.js","sourceRoot":"","sources":["../../src/elements/TextBox.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * TextBox - Represents a floating text box in a Word document\r\n *\r\n * Text boxes use DrawingML (a:) and WordprocessingML Drawing (wp:) namespaces,\r\n * plus WordprocessingShape (wps:) namespace for Word 2010+ features.\r\n *\r\n * Per ECMA-376 Part 4 (Transitional) and Office Open XML extensions,\r\n * text boxes in Word documents use the wps:wsp element with wps:txbx content.\r\n */\r\n\r\nimport { XMLBuilder, XMLElement } from '../xml/XMLBuilder';\r\nimport { UNITS } from '../utils/units';\r\nimport { Paragraph } from './Paragraph';\r\nimport {\r\n ImagePosition,\r\n ImageAnchor,\r\n PositionAnchor,\r\n HorizontalAlignment,\r\n VerticalAlignment\r\n} from './Image';\r\nimport { BorderDefinition } from './Paragraph';\r\n\r\n/**\r\n * TextBox margins configuration\r\n */\r\nexport interface TextBoxMargins {\r\n /** Top margin in EMUs */\r\n top: number;\r\n /** Bottom margin in EMUs */\r\n bottom: number;\r\n /** Left margin in EMUs */\r\n left: number;\r\n /** Right margin in EMUs */\r\n right: number;\r\n}\r\n\r\n/**\r\n * TextBox fill configuration\r\n */\r\nexport interface TextBoxFill {\r\n /** Fill color in hex (e.g., 'F0F0F0') */\r\n color: string;\r\n /** Transparency percentage (0-100) */\r\n transparency?: number;\r\n}\r\n\r\n/**\r\n * TextBox properties\r\n */\r\nexport interface TextBoxProperties {\r\n /** Width in EMUs */\r\n width: number;\r\n /** Height in EMUs */\r\n height: number;\r\n /** Paragraphs within the text box */\r\n paragraphs?: Paragraph[];\r\n /** Position configuration */\r\n position?: ImagePosition;\r\n /** Anchor configuration */\r\n anchor?: ImageAnchor;\r\n /** Fill color and transparency */\r\n fill?: TextBoxFill;\r\n /** Border configuration */\r\n borders?: BorderDefinition;\r\n /** Internal margins */\r\n margins?: TextBoxMargins;\r\n /** TextBox name */\r\n name?: string;\r\n /** TextBox description (for accessibility) */\r\n description?: string;\r\n}\r\n\r\n/**\r\n * Represents a floating text box\r\n */\r\nexport class TextBox {\r\n private width: number;\r\n private height: number;\r\n private paragraphs: Paragraph[] = [];\r\n private position?: ImagePosition;\r\n private anchor?: ImageAnchor;\r\n private fill?: TextBoxFill;\r\n private borders?: BorderDefinition;\r\n private margins?: TextBoxMargins;\r\n private name: string;\r\n private description: string;\r\n private docPrId = 1;\r\n\r\n /**\r\n * Creates a new text box\r\n * @param properties TextBox properties\r\n * @private Use static factory methods instead (create)\r\n */\r\n private constructor(properties: TextBoxProperties) {\r\n this.width = properties.width;\r\n this.height = properties.height;\r\n if (properties.paragraphs) {\r\n this.paragraphs = properties.paragraphs;\r\n }\r\n this.position = properties.position;\r\n this.anchor = properties.anchor;\r\n this.fill = properties.fill;\r\n this.borders = properties.borders;\r\n this.margins = properties.margins;\r\n this.name = properties.name || 'TextBox';\r\n this.description = properties.description || '';\r\n }\r\n\r\n /**\r\n * Factory method for creating a text box\r\n * @param width Width in EMUs\r\n * @param height Height in EMUs\r\n * @returns New TextBox instance\r\n * @example\r\n * const textbox = TextBox.create(inchesToEmus(3), inchesToEmus(2));\r\n */\r\n static create(width: number, height: number): TextBox {\r\n return new TextBox({ width, height });\r\n }\r\n\r\n /**\r\n * Gets the width in EMUs\r\n * @returns Width\r\n */\r\n getWidth(): number {\r\n return this.width;\r\n }\r\n\r\n /**\r\n * Gets the height in EMUs\r\n * @returns Height\r\n */\r\n getHeight(): number {\r\n return this.height;\r\n }\r\n\r\n /**\r\n * Adds a paragraph to the text box\r\n * @param paragraph Paragraph to add\r\n * @returns This text box for chaining\r\n */\r\n addParagraph(paragraph: Paragraph): this {\r\n this.paragraphs.push(paragraph);\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets all paragraphs\r\n * @returns Array of paragraphs\r\n */\r\n getParagraphs(): Paragraph[] {\r\n return this.paragraphs;\r\n }\r\n\r\n /**\r\n * Sets text box position (for floating text boxes)\r\n * @param horizontal Horizontal positioning configuration\r\n * @param vertical Vertical positioning configuration\r\n * @returns This text box for chaining\r\n */\r\n setPosition(\r\n horizontal: { anchor: PositionAnchor; offset?: number; alignment?: HorizontalAlignment },\r\n vertical: { anchor: PositionAnchor; offset?: number; alignment?: VerticalAlignment }\r\n ): this {\r\n this.position = { horizontal, vertical };\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the position configuration\r\n * @returns Position or undefined\r\n */\r\n getPosition(): ImagePosition | undefined {\r\n return this.position;\r\n }\r\n\r\n /**\r\n * Sets anchor configuration\r\n * @param options Anchor configuration\r\n * @returns This text box for chaining\r\n */\r\n setAnchor(options: ImageAnchor): this {\r\n this.anchor = options;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the anchor configuration\r\n * @returns Anchor configuration or undefined\r\n */\r\n getAnchor(): ImageAnchor | undefined {\r\n return this.anchor;\r\n }\r\n\r\n /**\r\n * Sets the fill color\r\n * @param color Fill color in hex\r\n * @param transparency Optional transparency percentage (0-100)\r\n * @returns This text box for chaining\r\n */\r\n setFill(color: string, transparency?: number): this {\r\n this.fill = { color, transparency };\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the fill configuration\r\n * @returns Fill or undefined\r\n */\r\n getFill(): TextBoxFill | undefined {\r\n return this.fill;\r\n }\r\n\r\n /**\r\n * Sets the borders\r\n * @param borders Border configuration\r\n * @returns This text box for chaining\r\n */\r\n setBorders(borders: BorderDefinition): this {\r\n this.borders = borders;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the borders configuration\r\n * @returns Borders or undefined\r\n */\r\n getBorders(): BorderDefinition | undefined {\r\n return this.borders;\r\n }\r\n\r\n /**\r\n * Sets internal margins\r\n * @param margins Margin configuration\r\n * @returns This text box for chaining\r\n */\r\n setMargins(margins: TextBoxMargins): this {\r\n this.margins = margins;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the margins configuration\r\n * @returns Margins or undefined\r\n */\r\n getMargins(): TextBoxMargins | undefined {\r\n return this.margins;\r\n }\r\n\r\n /**\r\n * Sets the text box name\r\n * @param name TextBox name\r\n * @returns This text box for chaining\r\n */\r\n setName(name: string): this {\r\n this.name = name;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the text box name\r\n * @returns TextBox name\r\n */\r\n getName(): string {\r\n return this.name;\r\n }\r\n\r\n /**\r\n * Sets the text box description (for accessibility)\r\n * @param description TextBox description\r\n * @returns This text box for chaining\r\n */\r\n setDescription(description: string): this {\r\n this.description = description;\r\n return this;\r\n }\r\n\r\n /**\r\n * Gets the text box description\r\n * @returns TextBox description\r\n */\r\n getDescription(): string {\r\n return this.description;\r\n }\r\n\r\n /**\r\n * Sets the docPr ID (drawing object ID)\r\n * @param id Document property ID\r\n * @returns This text box for chaining\r\n */\r\n setDocPrId(id: number): this {\r\n this.docPrId = id;\r\n return this;\r\n }\r\n\r\n /**\r\n * Checks if this text box is floating (has anchor or position configuration)\r\n * @returns True if floating, false if inline\r\n */\r\n isFloating(): boolean {\r\n return this.anchor !== undefined || this.position !== undefined;\r\n }\r\n\r\n /**\r\n * Generates DrawingML XML for the text box\r\n * Creates either inline or floating (anchor) text box based on configuration\r\n * @returns XML element representing the text box\r\n */\r\n toXML(): XMLElement {\r\n // Text boxes are typically floating, but support inline as well\r\n const textboxElement = this.isFloating() ? this.createAnchor() : this.createInline();\r\n\r\n // Create the drawing structure\r\n return XMLBuilder.w('drawing', undefined, [textboxElement]);\r\n }\r\n\r\n /**\r\n * Creates the wp:inline element for inline text boxes\r\n * @private\r\n */\r\n private createInline(): XMLElement {\r\n const children: XMLElement[] = [];\r\n\r\n // Extent (size)\r\n children.push({\r\n name: 'wp:extent',\r\n attributes: {\r\n cx: this.width.toString(),\r\n cy: this.height.toString(),\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Effect extent\r\n children.push({\r\n name: 'wp:effectExtent',\r\n attributes: {\r\n l: '0',\r\n t: '0',\r\n r: '0',\r\n b: '0',\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Document properties\r\n children.push({\r\n name: 'wp:docPr',\r\n attributes: {\r\n id: this.docPrId.toString(),\r\n name: this.name,\r\n descr: this.description,\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Non-visual graphic frame properties\r\n children.push({\r\n name: 'wp:cNvGraphicFramePr',\r\n selfClosing: true,\r\n });\r\n\r\n // Graphic data (the text box)\r\n children.push(this.createGraphic());\r\n\r\n return {\r\n name: 'wp:inline',\r\n attributes: {\r\n distT: '0',\r\n distB: '0',\r\n distL: '0',\r\n distR: '0',\r\n },\r\n children,\r\n };\r\n }\r\n\r\n /**\r\n * Creates the wp:anchor element for floating text boxes\r\n * @private\r\n */\r\n private createAnchor(): XMLElement {\r\n const children: XMLElement[] = [];\r\n\r\n const anchorConfig = this.anchor || {\r\n behindDoc: false,\r\n locked: false,\r\n layoutInCell: true,\r\n allowOverlap: false,\r\n relativeHeight: 251658240,\r\n };\r\n\r\n // Position H (horizontal)\r\n if (this.position) {\r\n const posH = this.position.horizontal;\r\n const posHChildren: XMLElement[] = [];\r\n\r\n if (posH.offset !== undefined) {\r\n posHChildren.push({\r\n name: 'wp:posOffset',\r\n children: [posH.offset.toString()],\r\n });\r\n } else if (posH.alignment) {\r\n posHChildren.push({\r\n name: 'wp:align',\r\n children: [posH.alignment],\r\n });\r\n }\r\n\r\n children.push({\r\n name: 'wp:positionH',\r\n attributes: {\r\n relativeFrom: posH.anchor,\r\n },\r\n children: posHChildren,\r\n });\r\n }\r\n\r\n // Position V (vertical)\r\n if (this.position) {\r\n const posV = this.position.vertical;\r\n const posVChildren: XMLElement[] = [];\r\n\r\n if (posV.offset !== undefined) {\r\n posVChildren.push({\r\n name: 'wp:posOffset',\r\n children: [posV.offset.toString()],\r\n });\r\n } else if (posV.alignment) {\r\n posVChildren.push({\r\n name: 'wp:align',\r\n children: [posV.alignment],\r\n });\r\n }\r\n\r\n children.push({\r\n name: 'wp:positionV',\r\n attributes: {\r\n relativeFrom: posV.anchor,\r\n },\r\n children: posVChildren,\r\n });\r\n }\r\n\r\n // Extent (size)\r\n children.push({\r\n name: 'wp:extent',\r\n attributes: {\r\n cx: this.width.toString(),\r\n cy: this.height.toString(),\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Effect extent\r\n children.push({\r\n name: 'wp:effectExtent',\r\n attributes: {\r\n l: '0',\r\n t: '0',\r\n r: '0',\r\n b: '0',\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Wrap square (default for text boxes)\r\n children.push({\r\n name: 'wp:wrapSquare',\r\n attributes: {\r\n wrapText: 'bothSides',\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Document properties\r\n children.push({\r\n name: 'wp:docPr',\r\n attributes: {\r\n id: this.docPrId.toString(),\r\n name: this.name,\r\n descr: this.description,\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Non-visual graphic frame properties\r\n children.push({\r\n name: 'wp:cNvGraphicFramePr',\r\n selfClosing: true,\r\n });\r\n\r\n // Graphic data (the text box)\r\n children.push(this.createGraphic());\r\n\r\n return {\r\n name: 'wp:anchor',\r\n attributes: {\r\n distT: '0',\r\n distB: '0',\r\n distL: '0',\r\n distR: '0',\r\n simplePos: '0',\r\n relativeHeight: anchorConfig.relativeHeight.toString(),\r\n behindDoc: anchorConfig.behindDoc ? '1' : '0',\r\n locked: anchorConfig.locked ? '1' : '0',\r\n layoutInCell: anchorConfig.layoutInCell ? '1' : '0',\r\n allowOverlap: anchorConfig.allowOverlap ? '1' : '0',\r\n },\r\n children,\r\n };\r\n }\r\n\r\n /**\r\n * Creates the a:graphic element containing the text box\r\n * @private\r\n */\r\n private createGraphic(): XMLElement {\r\n return {\r\n name: 'a:graphic',\r\n attributes: {\r\n 'xmlns:a': 'http://schemas.openxmlformats.org/drawingml/2006/main',\r\n },\r\n children: [\r\n {\r\n name: 'a:graphicData',\r\n attributes: {\r\n uri: 'http://schemas.microsoft.com/office/word/2010/wordprocessingShape',\r\n },\r\n children: [this.createWps()],\r\n },\r\n ],\r\n };\r\n }\r\n\r\n /**\r\n * Creates the wps:wsp element (WordprocessingShape for text box)\r\n * @private\r\n */\r\n private createWps(): XMLElement {\r\n const children: XMLElement[] = [];\r\n\r\n // Non-visual shape properties\r\n children.push({\r\n name: 'wps:cNvSpPr',\r\n attributes: {\r\n 'xmlns:wps': 'http://schemas.microsoft.com/office/word/2010/wordprocessingShape',\r\n txBox: '1', // Indicates this is a text box\r\n },\r\n selfClosing: true,\r\n });\r\n\r\n // Shape properties (size, fill, borders)\r\n children.push(this.createSpPr());\r\n\r\n // Text box content\r\n children.push(this.createTextBoxContent());\r\n\r\n // Body properties (margins/insets)\r\n children.push(this.createBodyPr());\r\n\r\n return {\r\n name: 'wps:wsp',\r\n attributes: {\r\n 'xmlns:wps': 'http://schemas.microsoft.com/office/word/2010/wordprocessingShape',\r\n },\r\n children,\r\n };\r\n }\r\n\r\n /**\r\n * Creates the wps:bodyPr element (text body properties including margins)\r\n * Per ECMA-376 Part 4, bodyPr specifies inset margins via lIns/tIns/rIns/bIns attributes\r\n * @private\r\n */\r\n private createBodyPr(): XMLElement {\r\n const attrs: Record<string, string> = {\r\n rot: '0',\r\n vert: 'horz',\r\n wrap: 'square',\r\n anchor: 't',\r\n };\r\n\r\n // Add margin insets if set\r\n if (this.margins) {\r\n if (this.margins.left !== undefined) attrs.lIns = this.margins.left.toString();\r\n if (this.margins.top !== undefined) attrs.tIns = this.margins.top.toString();\r\n if (this.margins.right !== undefined) attrs.rIns = this.margins.right.toString();\r\n if (this.margins.bottom !== undefined) attrs.bIns = this.margins.bottom.toString();\r\n }\r\n\r\n return {\r\n name: 'wps:bodyPr',\r\n attributes: attrs,\r\n selfClosing: true,\r\n };\r\n }\r\n\r\n /**\r\n * Creates the wps:spPr element (shape properties for text box)\r\n * @private\r\n */\r\n private createSpPr(): XMLElement {\r\n const children: XMLElement[] = [];\r\n\r\n // Transform (position and size)\r\n children.push({\r\n name: 'a:xfrm',\r\n children: [\r\n {\r\n name: 'a:off',\r\n attributes: { x: '0', y: '0' },\r\n selfClosing: true,\r\n },\r\n {\r\n name: 'a:ext',\r\n attributes: {\r\n cx: this.width.toString(),\r\n cy: this.height.toString(),\r\n },\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // Preset geometry (rectangle for text box)\r\n children.push({\r\n name: 'a:prstGeom',\r\n attributes: {\r\n prst: 'rect',\r\n },\r\n children: [\r\n {\r\n name: 'a:avLst',\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // Fill\r\n if (this.fill) {\r\n const fillChildren: XMLElement[] = [];\r\n\r\n // Transparency\r\n if (this.fill.transparency !== undefined) {\r\n const alpha = 100 - this.fill.transparency;\r\n fillChildren.push({\r\n name: 'a:alpha',\r\n attributes: {\r\n val: Math.round(alpha * 1000).toString(),\r\n },\r\n selfClosing: true,\r\n });\r\n }\r\n\r\n children.push({\r\n name: 'a:solidFill',\r\n children: [\r\n {\r\n name: 'a:srgbClr',\r\n attributes: {\r\n val: this.fill.color.toUpperCase(),\r\n },\r\n ...(fillChildren.length > 0 ? { children: fillChildren } : { selfClosing: true }),\r\n },\r\n ],\r\n });\r\n } else {\r\n // No fill (transparent background)\r\n children.push({\r\n name: 'a:noFill',\r\n selfClosing: true,\r\n });\r\n }\r\n\r\n // Borders\r\n if (this.borders?.size !== undefined) {\r\n const lnAttrs: Record<string, string> = {\r\n w: (this.borders.size * UNITS.EMUS_PER_POINT).toString(), // Convert points to EMUs\r\n };\r\n\r\n const lnChildren: XMLElement[] = [];\r\n\r\n // Border color\r\n lnChildren.push({\r\n name: 'a:solidFill',\r\n children: [\r\n {\r\n name: 'a:srgbClr',\r\n attributes: {\r\n val: (this.borders.color || '000000').toUpperCase(),\r\n },\r\n selfClosing: true,\r\n },\r\n ],\r\n });\r\n\r\n // Border style\r\n if (this.borders.style && this.borders.style !== 'single') {\r\n const dashMap: Record<string, string> = {\r\n dash: 'dash',\r\n dot: 'dot',\r\n dashDot: 'dashDot',\r\n dashDotDot: 'lgDashDotDot',\r\n };\r\n const dashStyle = dashMap[this.borders.style] || 'solid';\r\n if (dashStyle !== 'solid') {\r\n lnChildren.push({\r\n name: 'a:prstDash',\r\n attributes: {\r\n val: dashStyle,\r\n },\r\n selfClosing: true,\r\n });\r\n }\r\n }\r\n\r\n children.push({\r\n name: 'a:ln',\r\n attributes: lnAttrs,\r\n children: lnChildren,\r\n });\r\n }\r\n\r\n return {\r\n name: 'wps:spPr',\r\n children,\r\n };\r\n }\r\n\r\n /**\r\n * Creates the wps:txbx element (text box content)\r\n * @private\r\n */\r\n private createTextBoxContent(): XMLElement {\r\n if (this.paragraphs.length === 0) {\r\n // Empty text box - create empty paragraph\r\n return {\r\n name: 'wps:txbx',\r\n children: [\r\n {\r\n name: 'w:txbxContent',\r\n children: [\r\n XMLBuilder.w('p', undefined, [\r\n XMLBuilder.w('r', undefined, [\r\n XMLBuilder.w('t', undefined, [''])\r\n ])\r\n ])\r\n ],\r\n },\r\n ],\r\n };\r\n }\r\n\r\n // Convert paragraphs to XML\r\n const paragraphXml = this.paragraphs.map(p => p.toXML());\r\n\r\n return {\r\n name: 'wps:txbx',\r\n children: [\r\n {\r\n name: 'w:txbxContent',\r\n children: paragraphXml,\r\n },\r\n ],\r\n };\r\n }\r\n}\r\n"]}
@@ -37,7 +37,7 @@ export declare class AbstractNumbering {
37
37
  removeLevel(levelIndex: number): boolean;
38
38
  toXML(): XMLElement;
39
39
  static createBulletList(abstractNumId: number, levels?: number, bullets?: string[]): AbstractNumbering;
40
- static createNumberedList(abstractNumId: number, levels?: number, formats?: Array<"decimal" | "lowerLetter" | "lowerRoman" | "upperLetter" | "upperRoman">): AbstractNumbering;
40
+ static createNumberedList(abstractNumId: number, levels?: number, formats?: ("decimal" | "lowerLetter" | "lowerRoman" | "upperLetter" | "upperRoman")[]): AbstractNumbering;
41
41
  static createMultiLevelList(abstractNumId: number): AbstractNumbering;
42
42
  static createOutlineList(abstractNumId: number): AbstractNumbering;
43
43
  static create(properties: AbstractNumberingProperties): AbstractNumbering;