docx 8.0.0 → 8.0.2

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 (499) hide show
  1. package/build/file/styles/style/character-style.d.ts +0 -1
  2. package/build/file/styles/style/paragraph-style.d.ts +0 -1
  3. package/build/index.js +1 -1
  4. package/package.json +5 -8
  5. package/src/export/formatter.spec.ts +0 -118
  6. package/src/export/formatter.ts +0 -14
  7. package/src/export/index.ts +0 -1
  8. package/src/export/packer/image-replacer.spec.ts +0 -61
  9. package/src/export/packer/image-replacer.ts +0 -17
  10. package/src/export/packer/next-compiler.spec.ts +0 -180
  11. package/src/export/packer/next-compiler.ts +0 -444
  12. package/src/export/packer/numbering-replacer.ts +0 -16
  13. package/src/export/packer/packer.spec.ts +0 -175
  14. package/src/export/packer/packer.ts +0 -74
  15. package/src/file/app-properties/app-properties-attributes.ts +0 -11
  16. package/src/file/app-properties/app-properties.ts +0 -15
  17. package/src/file/border/border.spec.ts +0 -54
  18. package/src/file/border/border.ts +0 -86
  19. package/src/file/border/index.ts +0 -1
  20. package/src/file/content-types/content-types-attributes.ts +0 -9
  21. package/src/file/content-types/content-types.spec.ts +0 -150
  22. package/src/file/content-types/content-types.ts +0 -49
  23. package/src/file/content-types/default/default-attributes.ts +0 -11
  24. package/src/file/content-types/default/default.ts +0 -15
  25. package/src/file/content-types/override/override-attributes.ts +0 -11
  26. package/src/file/content-types/override/override.ts +0 -15
  27. package/src/file/core-properties/index.ts +0 -1
  28. package/src/file/core-properties/properties.spec.ts +0 -71
  29. package/src/file/core-properties/properties.ts +0 -116
  30. package/src/file/custom-properties/custom-properties-attributes.ts +0 -11
  31. package/src/file/custom-properties/custom-properties.spec.ts +0 -68
  32. package/src/file/custom-properties/custom-properties.ts +0 -39
  33. package/src/file/custom-properties/custom-property-attributes.ts +0 -13
  34. package/src/file/custom-properties/custom-property.ts +0 -28
  35. package/src/file/custom-properties/index.ts +0 -2
  36. package/src/file/document/body/body.spec.ts +0 -59
  37. package/src/file/document/body/body.ts +0 -50
  38. package/src/file/document/body/index.ts +0 -2
  39. package/src/file/document/body/section-properties/index.ts +0 -2
  40. package/src/file/document/body/section-properties/properties/column.ts +0 -24
  41. package/src/file/document/body/section-properties/properties/columns.spec.ts +0 -45
  42. package/src/file/document/body/section-properties/properties/columns.ts +0 -39
  43. package/src/file/document/body/section-properties/properties/doc-grid.spec.ts +0 -30
  44. package/src/file/document/body/section-properties/properties/doc-grid.ts +0 -52
  45. package/src/file/document/body/section-properties/properties/header-footer-reference.spec.ts +0 -56
  46. package/src/file/document/body/section-properties/properties/header-footer-reference.ts +0 -65
  47. package/src/file/document/body/section-properties/properties/index.ts +0 -13
  48. package/src/file/document/body/section-properties/properties/line-number.ts +0 -49
  49. package/src/file/document/body/section-properties/properties/page-borders.spec.ts +0 -93
  50. package/src/file/document/body/section-properties/properties/page-borders.ts +0 -106
  51. package/src/file/document/body/section-properties/properties/page-margin.ts +0 -46
  52. package/src/file/document/body/section-properties/properties/page-number.ts +0 -54
  53. package/src/file/document/body/section-properties/properties/page-size.spec.ts +0 -25
  54. package/src/file/document/body/section-properties/properties/page-size.ts +0 -44
  55. package/src/file/document/body/section-properties/properties/page-text-direction.spec.ts +0 -22
  56. package/src/file/document/body/section-properties/properties/page-text-direction.ts +0 -22
  57. package/src/file/document/body/section-properties/properties/section-type.spec.ts +0 -34
  58. package/src/file/document/body/section-properties/properties/section-type.ts +0 -37
  59. package/src/file/document/body/section-properties/section-properties.spec.ts +0 -279
  60. package/src/file/document/body/section-properties/section-properties.ts +0 -196
  61. package/src/file/document/document-attributes.ts +0 -89
  62. package/src/file/document/document-background/document-background.spec.ts +0 -51
  63. package/src/file/document/document-background/document-background.ts +0 -78
  64. package/src/file/document/document-background/index.ts +0 -1
  65. package/src/file/document/document.spec.ts +0 -67
  66. package/src/file/document/document.ts +0 -90
  67. package/src/file/document/index.ts +0 -4
  68. package/src/file/document-wrapper.spec.ts +0 -14
  69. package/src/file/document-wrapper.ts +0 -28
  70. package/src/file/drawing/anchor/anchor-attributes.ts +0 -26
  71. package/src/file/drawing/anchor/anchor.spec.ts +0 -609
  72. package/src/file/drawing/anchor/anchor.ts +0 -97
  73. package/src/file/drawing/anchor/index.ts +0 -2
  74. package/src/file/drawing/doc-properties/doc-properties-children.spec.ts +0 -61
  75. package/src/file/drawing/doc-properties/doc-properties-children.ts +0 -57
  76. package/src/file/drawing/doc-properties/doc-properties.ts +0 -67
  77. package/src/file/drawing/drawing.spec.ts +0 -708
  78. package/src/file/drawing/drawing.ts +0 -45
  79. package/src/file/drawing/effect-extent/effect-extent-attributes.ts +0 -15
  80. package/src/file/drawing/effect-extent/effect-extent.ts +0 -17
  81. package/src/file/drawing/extent/extent-attributes.ts +0 -11
  82. package/src/file/drawing/extent/extent.ts +0 -18
  83. package/src/file/drawing/floating/align.spec.ts +0 -17
  84. package/src/file/drawing/floating/align.ts +0 -10
  85. package/src/file/drawing/floating/floating-position.ts +0 -58
  86. package/src/file/drawing/floating/horizontal-position.spec.ts +0 -57
  87. package/src/file/drawing/floating/horizontal-position.ts +0 -33
  88. package/src/file/drawing/floating/index.ts +0 -4
  89. package/src/file/drawing/floating/position-offset.spec.ts +0 -16
  90. package/src/file/drawing/floating/position-offset.ts +0 -9
  91. package/src/file/drawing/floating/simple-pos.spec.ts +0 -21
  92. package/src/file/drawing/floating/simple-pos.ts +0 -26
  93. package/src/file/drawing/floating/vertical-position.spec.ts +0 -57
  94. package/src/file/drawing/floating/vertical-position.ts +0 -33
  95. package/src/file/drawing/graphic-frame/graphic-frame-locks/graphic-frame-lock-attributes.ts +0 -11
  96. package/src/file/drawing/graphic-frame/graphic-frame-locks/graphic-frame-locks.ts +0 -15
  97. package/src/file/drawing/graphic-frame/graphic-frame-properties.ts +0 -10
  98. package/src/file/drawing/index.ts +0 -3
  99. package/src/file/drawing/inline/graphic/graphic-data/graphic-data-attribute.ts +0 -9
  100. package/src/file/drawing/inline/graphic/graphic-data/graphic-data.ts +0 -23
  101. package/src/file/drawing/inline/graphic/graphic-data/index.ts +0 -1
  102. package/src/file/drawing/inline/graphic/graphic-data/pic/blip/blip-fill.ts +0 -16
  103. package/src/file/drawing/inline/graphic/graphic-data/pic/blip/blip.ts +0 -24
  104. package/src/file/drawing/inline/graphic/graphic-data/pic/blip/source-rectangle.ts +0 -7
  105. package/src/file/drawing/inline/graphic/graphic-data/pic/blip/stretch.ts +0 -14
  106. package/src/file/drawing/inline/graphic/graphic-data/pic/index.ts +0 -1
  107. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/child-non-visual-pic-properties/child-non-visual-pic-properties.ts +0 -10
  108. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/child-non-visual-pic-properties/pic-locks/pic-locks-attributes.ts +0 -11
  109. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/child-non-visual-pic-properties/pic-locks/pic-locks.ts +0 -14
  110. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/non-visual-pic-properties.ts +0 -12
  111. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/non-visual-properties/non-visual-properties-attributes.ts +0 -13
  112. package/src/file/drawing/inline/graphic/graphic-data/pic/non-visual-pic-properties/non-visual-properties/non-visual-properties.ts +0 -46
  113. package/src/file/drawing/inline/graphic/graphic-data/pic/pic-attributes.ts +0 -9
  114. package/src/file/drawing/inline/graphic/graphic-data/pic/pic.ts +0 -24
  115. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/extents/extents-attributes.ts +0 -11
  116. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/extents/extents.ts +0 -18
  117. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/form.ts +0 -40
  118. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/index.ts +0 -1
  119. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/offset/off-attributes.ts +0 -11
  120. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form/offset/off.ts +0 -16
  121. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/form.spec.ts +0 -93
  122. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/outline/no-fill.spec.ts +0 -16
  123. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/outline/no-fill.ts +0 -7
  124. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/outline/outline.spec.ts +0 -19
  125. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/outline/outline.ts +0 -11
  126. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/preset-geometry/adjustment-values/adjustment-values.ts +0 -8
  127. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/preset-geometry/preset-geometry-attributes.ts +0 -9
  128. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/preset-geometry/preset-geometry.ts +0 -18
  129. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/shape-properties-attributes.ts +0 -9
  130. package/src/file/drawing/inline/graphic/graphic-data/pic/shape-properties/shape-properties.ts +0 -29
  131. package/src/file/drawing/inline/graphic/graphic.ts +0 -29
  132. package/src/file/drawing/inline/graphic/index.ts +0 -1
  133. package/src/file/drawing/inline/index.ts +0 -1
  134. package/src/file/drawing/inline/inline-attributes.ts +0 -12
  135. package/src/file/drawing/inline/inline.ts +0 -56
  136. package/src/file/drawing/text-wrap/index.ts +0 -5
  137. package/src/file/drawing/text-wrap/text-wrapping.ts +0 -22
  138. package/src/file/drawing/text-wrap/wrap-none.ts +0 -8
  139. package/src/file/drawing/text-wrap/wrap-square.ts +0 -44
  140. package/src/file/drawing/text-wrap/wrap-tight.ts +0 -32
  141. package/src/file/drawing/text-wrap/wrap-top-and-bottom.ts +0 -32
  142. package/src/file/file-child.ts +0 -5
  143. package/src/file/file.spec.ts +0 -445
  144. package/src/file/file.ts +0 -288
  145. package/src/file/footer/footer-attributes.ts +0 -51
  146. package/src/file/footer/footer.spec.ts +0 -47
  147. package/src/file/footer/footer.ts +0 -44
  148. package/src/file/footer/index.ts +0 -1
  149. package/src/file/footer-wrapper.spec.ts +0 -58
  150. package/src/file/footer-wrapper.ts +0 -44
  151. package/src/file/footnotes/footnote/footnote-attributes.ts +0 -11
  152. package/src/file/footnotes/footnote/footnote.spec.ts +0 -162
  153. package/src/file/footnotes/footnote/footnote.ts +0 -38
  154. package/src/file/footnotes/footnote/index.ts +0 -1
  155. package/src/file/footnotes/footnote/run/continuation-seperator-run.ts +0 -10
  156. package/src/file/footnotes/footnote/run/continuation-seperator.ts +0 -7
  157. package/src/file/footnotes/footnote/run/footnote-ref-run.ts +0 -13
  158. package/src/file/footnotes/footnote/run/footnote-ref.ts +0 -7
  159. package/src/file/footnotes/footnote/run/index.ts +0 -1
  160. package/src/file/footnotes/footnote/run/reference-run.ts +0 -30
  161. package/src/file/footnotes/footnote/run/seperator-run.ts +0 -10
  162. package/src/file/footnotes/footnote/run/seperator.ts +0 -7
  163. package/src/file/footnotes/footnotes-attributes.ts +0 -41
  164. package/src/file/footnotes/footnotes.ts +0 -78
  165. package/src/file/footnotes/index.ts +0 -2
  166. package/src/file/footnotes-wrapper.spec.ts +0 -14
  167. package/src/file/footnotes-wrapper.ts +0 -21
  168. package/src/file/header/header-attributes.ts +0 -73
  169. package/src/file/header/header.spec.ts +0 -58
  170. package/src/file/header/header.ts +0 -56
  171. package/src/file/header/index.ts +0 -1
  172. package/src/file/header-wrapper.spec.ts +0 -58
  173. package/src/file/header-wrapper.ts +0 -46
  174. package/src/file/header.ts +0 -22
  175. package/src/file/index.ts +0 -19
  176. package/src/file/media/data.ts +0 -27
  177. package/src/file/media/index.ts +0 -2
  178. package/src/file/media/media.spec.ts +0 -65
  179. package/src/file/media/media.ts +0 -28
  180. package/src/file/numbering/abstract-numbering.spec.ts +0 -2692
  181. package/src/file/numbering/abstract-numbering.ts +0 -50
  182. package/src/file/numbering/concrete-numbering.spec.ts +0 -304
  183. package/src/file/numbering/index.ts +0 -4
  184. package/src/file/numbering/level.spec.ts +0 -62
  185. package/src/file/numbering/level.ts +0 -325
  186. package/src/file/numbering/multi-level-type.ts +0 -26
  187. package/src/file/numbering/num.ts +0 -96
  188. package/src/file/numbering/numbering.spec.ts +0 -138
  189. package/src/file/numbering/numbering.ts +0 -237
  190. package/src/file/paragraph/formatting/alignment.spec.ts +0 -19
  191. package/src/file/paragraph/formatting/alignment.ts +0 -60
  192. package/src/file/paragraph/formatting/border.spec.ts +0 -119
  193. package/src/file/paragraph/formatting/border.ts +0 -45
  194. package/src/file/paragraph/formatting/break.spec.ts +0 -65
  195. package/src/file/paragraph/formatting/break.ts +0 -43
  196. package/src/file/paragraph/formatting/indent.spec.ts +0 -42
  197. package/src/file/paragraph/formatting/indent.ts +0 -71
  198. package/src/file/paragraph/formatting/index.ts +0 -8
  199. package/src/file/paragraph/formatting/spacing.spec.ts +0 -25
  200. package/src/file/paragraph/formatting/spacing.ts +0 -33
  201. package/src/file/paragraph/formatting/style.spec.ts +0 -35
  202. package/src/file/paragraph/formatting/style.ts +0 -22
  203. package/src/file/paragraph/formatting/tab-stop.spec.ts +0 -54
  204. package/src/file/paragraph/formatting/tab-stop.ts +0 -63
  205. package/src/file/paragraph/formatting/unordered-list.spec.ts +0 -37
  206. package/src/file/paragraph/formatting/unordered-list.ts +0 -38
  207. package/src/file/paragraph/formatting/width.ts +0 -0
  208. package/src/file/paragraph/formatting/word-wrap.spec.ts +0 -20
  209. package/src/file/paragraph/formatting/word-wrap.ts +0 -14
  210. package/src/file/paragraph/frame/frame-properties.spec.ts +0 -156
  211. package/src/file/paragraph/frame/frame-properties.ts +0 -122
  212. package/src/file/paragraph/frame/index.ts +0 -1
  213. package/src/file/paragraph/index.ts +0 -7
  214. package/src/file/paragraph/links/bookmark-attributes.ts +0 -19
  215. package/src/file/paragraph/links/bookmark.spec.ts +0 -41
  216. package/src/file/paragraph/links/bookmark.ts +0 -75
  217. package/src/file/paragraph/links/hyperlink-attributes.ts +0 -15
  218. package/src/file/paragraph/links/hyperlink.spec.ts +0 -130
  219. package/src/file/paragraph/links/hyperlink.ts +0 -45
  220. package/src/file/paragraph/links/index.ts +0 -4
  221. package/src/file/paragraph/links/outline-level.spec.ts +0 -23
  222. package/src/file/paragraph/links/outline-level.ts +0 -14
  223. package/src/file/paragraph/links/pageref-field-instruction.spec.ts +0 -24
  224. package/src/file/paragraph/links/pageref-field-instruction.ts +0 -23
  225. package/src/file/paragraph/links/pageref-properties.ts +0 -16
  226. package/src/file/paragraph/links/pageref.spec.ts +0 -76
  227. package/src/file/paragraph/links/pageref.ts +0 -13
  228. package/src/file/paragraph/math/brackets/index.ts +0 -4
  229. package/src/file/paragraph/math/brackets/math-angled-brackets.spec.ts +0 -51
  230. package/src/file/paragraph/math/brackets/math-angled-brackets.ts +0 -20
  231. package/src/file/paragraph/math/brackets/math-beginning-character.spec.ts +0 -22
  232. package/src/file/paragraph/math/brackets/math-beginning-character.ts +0 -14
  233. package/src/file/paragraph/math/brackets/math-bracket-properties.spec.ts +0 -45
  234. package/src/file/paragraph/math/brackets/math-bracket-properties.ts +0 -16
  235. package/src/file/paragraph/math/brackets/math-curly-brackets.spec.ts +0 -51
  236. package/src/file/paragraph/math/brackets/math-curly-brackets.ts +0 -20
  237. package/src/file/paragraph/math/brackets/math-ending-char.ts +0 -14
  238. package/src/file/paragraph/math/brackets/math-ending-character.spec.ts +0 -22
  239. package/src/file/paragraph/math/brackets/math-round-brackets.spec.ts +0 -36
  240. package/src/file/paragraph/math/brackets/math-round-brackets.ts +0 -15
  241. package/src/file/paragraph/math/brackets/math-square-brackets.spec.ts +0 -51
  242. package/src/file/paragraph/math/brackets/math-square-brackets.ts +0 -20
  243. package/src/file/paragraph/math/fraction/index.ts +0 -3
  244. package/src/file/paragraph/math/fraction/math-denominator.spec.ts +0 -26
  245. package/src/file/paragraph/math/fraction/math-denominator.ts +0 -13
  246. package/src/file/paragraph/math/fraction/math-fraction.spec.ts +0 -44
  247. package/src/file/paragraph/math/fraction/math-fraction.ts +0 -19
  248. package/src/file/paragraph/math/fraction/math-numerator.spec.ts +0 -26
  249. package/src/file/paragraph/math/fraction/math-numerator.ts +0 -13
  250. package/src/file/paragraph/math/function/index.ts +0 -3
  251. package/src/file/paragraph/math/function/math-function-name.spec.ts +0 -27
  252. package/src/file/paragraph/math/function/math-function-name.ts +0 -13
  253. package/src/file/paragraph/math/function/math-function-properties.spec.ts +0 -18
  254. package/src/file/paragraph/math/function/math-function-properties.ts +0 -8
  255. package/src/file/paragraph/math/function/math-function.spec.ts +0 -48
  256. package/src/file/paragraph/math/function/math-function.ts +0 -22
  257. package/src/file/paragraph/math/index.ts +0 -9
  258. package/src/file/paragraph/math/math-component.ts +0 -28
  259. package/src/file/paragraph/math/math-run.spec.ts +0 -21
  260. package/src/file/paragraph/math/math-run.ts +0 -12
  261. package/src/file/paragraph/math/math-text.spec.ts +0 -17
  262. package/src/file/paragraph/math/math-text.ts +0 -9
  263. package/src/file/paragraph/math/math.spec.ts +0 -38
  264. package/src/file/paragraph/math/math.ts +0 -18
  265. package/src/file/paragraph/math/n-ary/index.ts +0 -8
  266. package/src/file/paragraph/math/n-ary/math-accent-character.spec.ts +0 -22
  267. package/src/file/paragraph/math/n-ary/math-accent-character.ts +0 -14
  268. package/src/file/paragraph/math/n-ary/math-base.spec.ts +0 -27
  269. package/src/file/paragraph/math/n-ary/math-base.ts +0 -14
  270. package/src/file/paragraph/math/n-ary/math-integral.spec.ts +0 -116
  271. package/src/file/paragraph/math/n-ary/math-integral.ts +0 -31
  272. package/src/file/paragraph/math/n-ary/math-limit-location.spec.ts +0 -22
  273. package/src/file/paragraph/math/n-ary/math-limit-location.ts +0 -14
  274. package/src/file/paragraph/math/n-ary/math-n-ary-properties.spec.ts +0 -133
  275. package/src/file/paragraph/math/n-ary/math-n-ary-properties.ts +0 -26
  276. package/src/file/paragraph/math/n-ary/math-sub-script-hide.spec.ts +0 -22
  277. package/src/file/paragraph/math/n-ary/math-sub-script-hide.ts +0 -14
  278. package/src/file/paragraph/math/n-ary/math-sub-script.spec.ts +0 -27
  279. package/src/file/paragraph/math/n-ary/math-sub-script.ts +0 -14
  280. package/src/file/paragraph/math/n-ary/math-sum.spec.ts +0 -130
  281. package/src/file/paragraph/math/n-ary/math-sum.ts +0 -32
  282. package/src/file/paragraph/math/n-ary/math-super-script-hide.spec.ts +0 -22
  283. package/src/file/paragraph/math/n-ary/math-super-script-hide.ts +0 -14
  284. package/src/file/paragraph/math/n-ary/math-super-script.spec.ts +0 -27
  285. package/src/file/paragraph/math/n-ary/math-super-script.ts +0 -14
  286. package/src/file/paragraph/math/radical/index.ts +0 -3
  287. package/src/file/paragraph/math/radical/math-degree-hide.spec.ts +0 -22
  288. package/src/file/paragraph/math/radical/math-degree-hide.ts +0 -14
  289. package/src/file/paragraph/math/radical/math-degree.spec.ts +0 -36
  290. package/src/file/paragraph/math/radical/math-degree.ts +0 -15
  291. package/src/file/paragraph/math/radical/math-radical-properties.spec.ts +0 -35
  292. package/src/file/paragraph/math/radical/math-radical-properties.ts +0 -13
  293. package/src/file/paragraph/math/radical/math-radical.spec.ts +0 -48
  294. package/src/file/paragraph/math/radical/math-radical.ts +0 -22
  295. package/src/file/paragraph/math/script/index.ts +0 -4
  296. package/src/file/paragraph/math/script/pre-sub-super-script/index.ts +0 -2
  297. package/src/file/paragraph/math/script/pre-sub-super-script/math-pre-sub-super-script-function-properties.spec.ts +0 -17
  298. package/src/file/paragraph/math/script/pre-sub-super-script/math-pre-sub-super-script-function-properties.ts +0 -8
  299. package/src/file/paragraph/math/script/pre-sub-super-script/math-pre-sub-super-script-function.spec.ts +0 -60
  300. package/src/file/paragraph/math/script/pre-sub-super-script/math-pre-sub-super-script-function.ts +0 -23
  301. package/src/file/paragraph/math/script/sub-script/index.ts +0 -2
  302. package/src/file/paragraph/math/script/sub-script/math-sub-script-function-properties.spec.ts +0 -17
  303. package/src/file/paragraph/math/script/sub-script/math-sub-script-function-properties.ts +0 -8
  304. package/src/file/paragraph/math/script/sub-script/math-sub-script-function.spec.ts +0 -48
  305. package/src/file/paragraph/math/script/sub-script/math-sub-script-function.ts +0 -21
  306. package/src/file/paragraph/math/script/sub-super-script/index.ts +0 -2
  307. package/src/file/paragraph/math/script/sub-super-script/math-sub-super-script-function-properties.spec.ts +0 -17
  308. package/src/file/paragraph/math/script/sub-super-script/math-sub-super-script-function-properties.ts +0 -8
  309. package/src/file/paragraph/math/script/sub-super-script/math-sub-super-script-function.spec.ts +0 -60
  310. package/src/file/paragraph/math/script/sub-super-script/math-sub-super-script-function.ts +0 -23
  311. package/src/file/paragraph/math/script/super-script/index.ts +0 -2
  312. package/src/file/paragraph/math/script/super-script/math-super-script-function-properties.spec.ts +0 -17
  313. package/src/file/paragraph/math/script/super-script/math-super-script-function-properties.ts +0 -8
  314. package/src/file/paragraph/math/script/super-script/math-super-script-function.spec.ts +0 -48
  315. package/src/file/paragraph/math/script/super-script/math-super-script-function.ts +0 -21
  316. package/src/file/paragraph/paragraph.spec.ts +0 -990
  317. package/src/file/paragraph/paragraph.ts +0 -102
  318. package/src/file/paragraph/properties.spec.ts +0 -162
  319. package/src/file/paragraph/properties.ts +0 -206
  320. package/src/file/paragraph/run/break.spec.ts +0 -22
  321. package/src/file/paragraph/run/break.ts +0 -32
  322. package/src/file/paragraph/run/comment-run.spec.ts +0 -195
  323. package/src/file/paragraph/run/comment-run.ts +0 -182
  324. package/src/file/paragraph/run/emphasis-mark.spec.ts +0 -29
  325. package/src/file/paragraph/run/emphasis-mark.ts +0 -28
  326. package/src/file/paragraph/run/empty-children.spec.ts +0 -229
  327. package/src/file/paragraph/run/empty-children.ts +0 -127
  328. package/src/file/paragraph/run/field.ts +0 -32
  329. package/src/file/paragraph/run/formatting.spec.ts +0 -39
  330. package/src/file/paragraph/run/formatting.ts +0 -73
  331. package/src/file/paragraph/run/image-run.spec.ts +0 -1045
  332. package/src/file/paragraph/run/image-run.ts +0 -73
  333. package/src/file/paragraph/run/index.ts +0 -13
  334. package/src/file/paragraph/run/language.spec.ts +0 -29
  335. package/src/file/paragraph/run/language.ts +0 -35
  336. package/src/file/paragraph/run/page-number.spec.ts +0 -32
  337. package/src/file/paragraph/run/page-number.ts +0 -28
  338. package/src/file/paragraph/run/positional-tab.spec.ts +0 -27
  339. package/src/file/paragraph/run/positional-tab.ts +0 -80
  340. package/src/file/paragraph/run/properties.ts +0 -304
  341. package/src/file/paragraph/run/run-components/symbol.spec.ts +0 -28
  342. package/src/file/paragraph/run/run-components/symbol.ts +0 -18
  343. package/src/file/paragraph/run/run-components/text.spec.ts +0 -39
  344. package/src/file/paragraph/run/run-components/text.ts +0 -33
  345. package/src/file/paragraph/run/run-fonts.spec.ts +0 -32
  346. package/src/file/paragraph/run/run-fonts.ts +0 -44
  347. package/src/file/paragraph/run/run.spec.ts +0 -727
  348. package/src/file/paragraph/run/run.ts +0 -156
  349. package/src/file/paragraph/run/script.spec.ts +0 -51
  350. package/src/file/paragraph/run/script.ts +0 -24
  351. package/src/file/paragraph/run/sequential-identifier-instruction.ts +0 -13
  352. package/src/file/paragraph/run/sequential-identifier.spec.ts +0 -52
  353. package/src/file/paragraph/run/sequential-identifier.ts +0 -13
  354. package/src/file/paragraph/run/simple-field.spec.ts +0 -38
  355. package/src/file/paragraph/run/simple-field.ts +0 -23
  356. package/src/file/paragraph/run/symbol-run.spec.ts +0 -80
  357. package/src/file/paragraph/run/symbol-run.ts +0 -20
  358. package/src/file/paragraph/run/text-attributes.ts +0 -6
  359. package/src/file/paragraph/run/text-run.spec.ts +0 -41
  360. package/src/file/paragraph/run/text-run.ts +0 -14
  361. package/src/file/paragraph/run/underline.spec.ts +0 -37
  362. package/src/file/paragraph/run/underline.ts +0 -35
  363. package/src/file/relationships/attributes.ts +0 -9
  364. package/src/file/relationships/index.ts +0 -1
  365. package/src/file/relationships/relationship/relationship-attributes.ts +0 -15
  366. package/src/file/relationships/relationship/relationship.ts +0 -39
  367. package/src/file/relationships/relationships.spec.ts +0 -19
  368. package/src/file/relationships/relationships.ts +0 -25
  369. package/src/file/settings/compatibility-setting/compatibility-setting.spec.ts +0 -24
  370. package/src/file/settings/compatibility-setting/compatibility-setting.ts +0 -39
  371. package/src/file/settings/compatibility.spec.ts +0 -754
  372. package/src/file/settings/compatibility.ts +0 -479
  373. package/src/file/settings/index.ts +0 -1
  374. package/src/file/settings/settings.spec.ts +0 -140
  375. package/src/file/settings/settings.ts +0 -208
  376. package/src/file/shading/index.ts +0 -1
  377. package/src/file/shading/shading.spec.ts +0 -33
  378. package/src/file/shading/shading.ts +0 -88
  379. package/src/file/shared/alignment.ts +0 -15
  380. package/src/file/shared/index.ts +0 -3
  381. package/src/file/shared/number-format.ts +0 -133
  382. package/src/file/shared/space-type.ts +0 -4
  383. package/src/file/styles/defaults/document-defaults.spec.ts +0 -45
  384. package/src/file/styles/defaults/document-defaults.ts +0 -25
  385. package/src/file/styles/defaults/index.ts +0 -3
  386. package/src/file/styles/defaults/paragraph-properties.ts +0 -9
  387. package/src/file/styles/defaults/run-properties.ts +0 -10
  388. package/src/file/styles/external-styles-factory.spec.ts +0 -251
  389. package/src/file/styles/external-styles-factory.ts +0 -51
  390. package/src/file/styles/factory.ts +0 -114
  391. package/src/file/styles/index.ts +0 -4
  392. package/src/file/styles/latent-styles/exceptions.spec.ts +0 -32
  393. package/src/file/styles/latent-styles/exceptions.ts +0 -26
  394. package/src/file/styles/latent-styles/index.ts +0 -1
  395. package/src/file/styles/latent-styles/latent-styles.spec.ts +0 -34
  396. package/src/file/styles/latent-styles/latent-styles.ts +0 -12
  397. package/src/file/styles/sample/default-style.spec.ts +0 -12
  398. package/src/file/styles/sample/default-style.ts +0 -217
  399. package/src/file/styles/sample/index.ts +0 -1
  400. package/src/file/styles/style/character-style.spec.ts +0 -824
  401. package/src/file/styles/style/character-style.ts +0 -30
  402. package/src/file/styles/style/components.spec.ts +0 -19
  403. package/src/file/styles/style/components.ts +0 -27
  404. package/src/file/styles/style/default-styles.spec.ts +0 -321
  405. package/src/file/styles/style/default-styles.ts +0 -182
  406. package/src/file/styles/style/index.ts +0 -4
  407. package/src/file/styles/style/paragraph-style.spec.ts +0 -865
  408. package/src/file/styles/style/paragraph-style.ts +0 -28
  409. package/src/file/styles/style/style.spec.ts +0 -41
  410. package/src/file/styles/style/style.ts +0 -98
  411. package/src/file/styles/styles.spec.ts +0 -106
  412. package/src/file/styles/styles.ts +0 -48
  413. package/src/file/table/grid.spec.ts +0 -40
  414. package/src/file/table/grid.ts +0 -35
  415. package/src/file/table/index.ts +0 -5
  416. package/src/file/table/table-cell/index.ts +0 -2
  417. package/src/file/table/table-cell/table-cell-components.ts +0 -136
  418. package/src/file/table/table-cell/table-cell-properties.spec.ts +0 -114
  419. package/src/file/table/table-cell/table-cell-properties.ts +0 -68
  420. package/src/file/table/table-cell/table-cell.spec.ts +0 -650
  421. package/src/file/table/table-cell/table-cell.ts +0 -30
  422. package/src/file/table/table-properties/index.ts +0 -4
  423. package/src/file/table/table-properties/table-borders.spec.ts +0 -574
  424. package/src/file/table/table-properties/table-borders.ts +0 -75
  425. package/src/file/table/table-properties/table-cell-margin.spec.ts +0 -97
  426. package/src/file/table/table-properties/table-cell-margin.ts +0 -64
  427. package/src/file/table/table-properties/table-float-properties.spec.ts +0 -71
  428. package/src/file/table/table-properties/table-float-properties.ts +0 -203
  429. package/src/file/table/table-properties/table-layout.ts +0 -26
  430. package/src/file/table/table-properties/table-properties.spec.ts +0 -189
  431. package/src/file/table/table-properties/table-properties.ts +0 -91
  432. package/src/file/table/table-row/index.ts +0 -3
  433. package/src/file/table/table-row/table-row-height.ts +0 -43
  434. package/src/file/table/table-row/table-row-properties.spec.ts +0 -64
  435. package/src/file/table/table-row/table-row-properties.ts +0 -60
  436. package/src/file/table/table-row/table-row.spec.ts +0 -266
  437. package/src/file/table/table-row/table-row.ts +0 -75
  438. package/src/file/table/table-width.ts +0 -49
  439. package/src/file/table/table.spec.ts +0 -499
  440. package/src/file/table/table.ts +0 -98
  441. package/src/file/table-of-contents/field-instruction.ts +0 -70
  442. package/src/file/table-of-contents/index.ts +0 -2
  443. package/src/file/table-of-contents/sdt-content.ts +0 -7
  444. package/src/file/table-of-contents/sdt-properties.ts +0 -9
  445. package/src/file/table-of-contents/table-of-contents-properties.ts +0 -122
  446. package/src/file/table-of-contents/table-of-contents.spec.ts +0 -179
  447. package/src/file/table-of-contents/table-of-contents.ts +0 -41
  448. package/src/file/track-revision/index.ts +0 -2
  449. package/src/file/track-revision/track-revision-components/deleted-page-number.spec.ts +0 -32
  450. package/src/file/track-revision/track-revision-components/deleted-page-number.ts +0 -27
  451. package/src/file/track-revision/track-revision-components/deleted-text-run.spec.ts +0 -367
  452. package/src/file/track-revision/track-revision-components/deleted-text-run.ts +0 -76
  453. package/src/file/track-revision/track-revision-components/deleted-text.spec.ts +0 -17
  454. package/src/file/track-revision/track-revision-components/deleted-text.ts +0 -12
  455. package/src/file/track-revision/track-revision-components/inserted-text-run.spec.ts +0 -39
  456. package/src/file/track-revision/track-revision-components/inserted-text-run.ts +0 -20
  457. package/src/file/track-revision/track-revision.ts +0 -15
  458. package/src/file/vertical-align/index.ts +0 -1
  459. package/src/file/vertical-align/vertical-align.ts +0 -32
  460. package/src/file/xml-components/attribute.spec.ts +0 -25
  461. package/src/file/xml-components/attributes.ts +0 -47
  462. package/src/file/xml-components/base.ts +0 -20
  463. package/src/file/xml-components/default-attributes.ts +0 -41
  464. package/src/file/xml-components/imported-xml-component.spec.ts +0 -118
  465. package/src/file/xml-components/imported-xml-component.ts +0 -86
  466. package/src/file/xml-components/index.ts +0 -8
  467. package/src/file/xml-components/initializable-xml-component.ts +0 -11
  468. package/src/file/xml-components/simple-elements.spec.ts +0 -41
  469. package/src/file/xml-components/simple-elements.ts +0 -98
  470. package/src/file/xml-components/xml-component.spec.ts +0 -62
  471. package/src/file/xml-components/xml-component.ts +0 -63
  472. package/src/file/xml-components/xmlable-object.ts +0 -12
  473. package/src/index.spec.ts +0 -15
  474. package/src/index.ts +0 -7
  475. package/src/patcher/content-types-manager.spec.ts +0 -51
  476. package/src/patcher/content-types-manager.ts +0 -16
  477. package/src/patcher/from-docx.spec.ts +0 -370
  478. package/src/patcher/from-docx.ts +0 -233
  479. package/src/patcher/index.ts +0 -1
  480. package/src/patcher/paragraph-split-inject.spec.ts +0 -224
  481. package/src/patcher/paragraph-split-inject.ts +0 -54
  482. package/src/patcher/paragraph-token-replacer.spec.ts +0 -165
  483. package/src/patcher/paragraph-token-replacer.ts +0 -69
  484. package/src/patcher/relationship-manager.spec.ts +0 -87
  485. package/src/patcher/relationship-manager.ts +0 -42
  486. package/src/patcher/replacer.spec.ts +0 -206
  487. package/src/patcher/replacer.ts +0 -83
  488. package/src/patcher/run-renderer.spec.ts +0 -96
  489. package/src/patcher/run-renderer.ts +0 -109
  490. package/src/patcher/traverser.spec.ts +0 -599
  491. package/src/patcher/traverser.ts +0 -45
  492. package/src/patcher/util.spec.ts +0 -50
  493. package/src/patcher/util.ts +0 -30
  494. package/src/tests/utility.ts +0 -7
  495. package/src/util/convenience-functions.spec.ts +0 -31
  496. package/src/util/convenience-functions.ts +0 -12
  497. package/src/util/index.ts +0 -2
  498. package/src/util/values.spec.ts +0 -172
  499. package/src/util/values.ts +0 -219
@@ -1,41 +0,0 @@
1
- import { BaseXmlComponent, IContext } from "./base";
2
- import { IXmlableObject, IXmlAttribute } from "./xmlable-object";
3
-
4
- export type AttributeMap<T> = { readonly [P in keyof T]: string };
5
-
6
- export type AttributeData = { readonly [key: string]: boolean | number | string };
7
- export type AttributePayload<T> = { readonly [P in keyof T]: { readonly key: string; readonly value: T[P] } };
8
-
9
- export abstract class XmlAttributeComponent<T extends object> extends BaseXmlComponent {
10
- protected readonly xmlKeys?: AttributeMap<T>;
11
-
12
- public constructor(private readonly root: T) {
13
- super("_attr");
14
- }
15
-
16
- public prepForXml(_: IContext): IXmlableObject {
17
- const attrs = {};
18
- Object.keys(this.root).forEach((key) => {
19
- const value = this.root[key];
20
- if (value !== undefined) {
21
- const newKey = (this.xmlKeys && this.xmlKeys[key]) || key;
22
- // eslint-disable-next-line functional/immutable-data
23
- attrs[newKey] = value;
24
- }
25
- });
26
- return { _attr: attrs };
27
- }
28
- }
29
-
30
- export class NextAttributeComponent<T extends AttributeData> extends BaseXmlComponent {
31
- public constructor(private readonly root: AttributePayload<T>) {
32
- super("_attr");
33
- }
34
-
35
- public prepForXml(_: IContext): IXmlableObject {
36
- const attrs = Object.values<{ readonly key: string; readonly value: string | boolean | number }>(this.root)
37
- .filter(({ value }) => value !== undefined)
38
- .reduce((acc, { key, value }) => ({ ...acc, [key]: value }), {} as IXmlAttribute);
39
- return { _attr: attrs };
40
- }
41
- }
@@ -1,118 +0,0 @@
1
- import { expect } from "chai";
2
- import { Element, xml2js } from "xml-js";
3
-
4
- import { EMPTY_OBJECT } from "@file/xml-components";
5
-
6
- import { convertToXmlComponent, ImportedRootElementAttributes, ImportedXmlComponent } from "./imported-xml-component";
7
- import { IContext } from "./base";
8
-
9
- const xmlString = `
10
- <w:p w:one="value 1" w:two="value 2">
11
- <w:rPr>
12
- <w:noProof>some value</w:noProof>
13
- </w:rPr>
14
- <w:r active="true">
15
- <w:t>Text 1</w:t>
16
- </w:r>
17
- <w:r active="true">
18
- <w:t>Text 2</w:t>
19
- </w:r>
20
- </w:p>
21
- `;
22
-
23
- const convertedXmlElement = {
24
- root: [
25
- {
26
- rootKey: "w:p",
27
- root: [
28
- { rootKey: "_attr", root: { "w:one": "value 1", "w:two": "value 2" } },
29
- { rootKey: "w:rPr", root: [{ rootKey: "w:noProof", root: ["some value"] }] },
30
- {
31
- rootKey: "w:r",
32
- root: [
33
- { rootKey: "_attr", root: { active: "true" } },
34
- { rootKey: "w:t", root: ["Text 1"] },
35
- ],
36
- },
37
- {
38
- rootKey: "w:r",
39
- root: [
40
- { rootKey: "_attr", root: { active: "true" } },
41
- { rootKey: "w:t", root: ["Text 2"] },
42
- ],
43
- },
44
- ],
45
- },
46
- ],
47
- rootKey: undefined,
48
- };
49
-
50
- describe("ImportedXmlComponent", () => {
51
- let importedXmlComponent: ImportedXmlComponent;
52
-
53
- beforeEach(() => {
54
- const attributes = {
55
- someAttr: "1",
56
- otherAttr: "2",
57
- };
58
- importedXmlComponent = new ImportedXmlComponent("w:test", attributes);
59
- importedXmlComponent.push(new ImportedXmlComponent("w:child"));
60
- });
61
-
62
- describe("#prepForXml()", () => {
63
- it("should transform for xml", () => {
64
- // tslint:disable-next-line: no-object-literal-type-assertion
65
- const converted = importedXmlComponent.prepForXml({ stack: [] } as unknown as IContext);
66
- expect(converted).to.deep.equal({
67
- "w:test": [
68
- {
69
- _attr: {
70
- someAttr: "1",
71
- otherAttr: "2",
72
- },
73
- },
74
- {
75
- "w:child": EMPTY_OBJECT,
76
- },
77
- ],
78
- });
79
- });
80
- });
81
-
82
- it("should create XmlComponent from xml string", () => {
83
- const converted = ImportedXmlComponent.fromXmlString(xmlString);
84
- expect(converted).to.deep.equal(convertedXmlElement);
85
- });
86
-
87
- describe("convertToXmlComponent", () => {
88
- it("should convert to xml component", () => {
89
- const xmlObj = xml2js(xmlString, { compact: false }) as Element;
90
- const converted = convertToXmlComponent(xmlObj);
91
- expect(converted).to.deep.equal(convertedXmlElement);
92
- });
93
-
94
- it("should return undefined if xml type is invalid", () => {
95
- const xmlObj = { type: "invalid" } as Element;
96
- const converted = convertToXmlComponent(xmlObj);
97
- expect(converted).to.equal(undefined);
98
- });
99
- });
100
- });
101
-
102
- describe("ImportedRootElementAttributes", () => {
103
- let attributes: ImportedRootElementAttributes;
104
-
105
- beforeEach(() => {
106
- attributes = new ImportedRootElementAttributes({});
107
- });
108
-
109
- describe("#prepForXml()", () => {
110
- it("should work", () => {
111
- // tslint:disable-next-line: no-object-literal-type-assertion
112
- const converted = attributes.prepForXml({} as IContext);
113
- expect(converted).to.deep.equal({
114
- _attr: {},
115
- });
116
- });
117
- });
118
- });
@@ -1,86 +0,0 @@
1
- import { Element as XmlElement, xml2js } from "xml-js";
2
-
3
- import { IXmlableObject, XmlAttributeComponent, XmlComponent } from "@file/xml-components";
4
-
5
- import { IContext } from "./base";
6
-
7
- /**
8
- * Converts the given xml element (in json format) into XmlComponent.
9
- *
10
- * @param element the xml element in json presentation
11
- */
12
-
13
- export const convertToXmlComponent = (element: XmlElement): ImportedXmlComponent | string | undefined => {
14
- switch (element.type) {
15
- case undefined:
16
- case "element":
17
- // eslint-disable-next-line no-case-declarations
18
- const xmlComponent = new ImportedXmlComponent(element.name as string, element.attributes);
19
- // eslint-disable-next-line no-case-declarations
20
- const childElements = element.elements || [];
21
- for (const childElm of childElements) {
22
- const child = convertToXmlComponent(childElm);
23
- if (child !== undefined) {
24
- xmlComponent.push(child);
25
- }
26
- }
27
- return xmlComponent;
28
- case "text":
29
- return element.text as string;
30
- default:
31
- return undefined;
32
- }
33
- };
34
-
35
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
36
- class ImportedXmlComponentAttributes extends XmlAttributeComponent<any> {
37
- // noop
38
- }
39
-
40
- /**
41
- * Represents imported xml component from xml file.
42
- */
43
- export class ImportedXmlComponent extends XmlComponent {
44
- /**
45
- * Converts the xml string to a XmlComponent tree.
46
- *
47
- * @param importedContent xml content of the imported component
48
- */
49
- public static fromXmlString(importedContent: string): ImportedXmlComponent {
50
- const xmlObj = xml2js(importedContent, { compact: false }) as XmlElement;
51
- return convertToXmlComponent(xmlObj) as ImportedXmlComponent;
52
- }
53
- /**
54
- * Converts the xml string to a XmlComponent tree.
55
- *
56
- * @param importedContent xml content of the imported component
57
- */
58
-
59
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
60
- public constructor(rootKey: string, _attr?: any) {
61
- super(rootKey);
62
- if (_attr) {
63
- this.root.push(new ImportedXmlComponentAttributes(_attr));
64
- }
65
- }
66
-
67
- public push(xmlComponent: XmlComponent | string): void {
68
- this.root.push(xmlComponent);
69
- }
70
- }
71
-
72
- /**
73
- * Used for the attributes of root element that is being imported.
74
- */
75
- export class ImportedRootElementAttributes extends XmlComponent {
76
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
77
- public constructor(private readonly _attr: any) {
78
- super("");
79
- }
80
-
81
- public prepForXml(_: IContext): IXmlableObject {
82
- return {
83
- _attr: this._attr,
84
- };
85
- }
86
- }
@@ -1,8 +0,0 @@
1
- export * from "./xml-component";
2
- export * from "./attributes";
3
- export * from "./default-attributes";
4
- export * from "./imported-xml-component";
5
- export * from "./xmlable-object";
6
- export * from "./initializable-xml-component";
7
- export * from "./simple-elements";
8
- export * from "./base";
@@ -1,11 +0,0 @@
1
- import { XmlComponent } from "@file/xml-components";
2
-
3
- export abstract class InitializableXmlComponent extends XmlComponent {
4
- public constructor(rootKey: string, initComponent?: InitializableXmlComponent) {
5
- super(rootKey);
6
-
7
- if (initComponent) {
8
- this.root = initComponent.root;
9
- }
10
- }
11
- }
@@ -1,41 +0,0 @@
1
- import { expect } from "chai";
2
-
3
- import { Formatter } from "@export/formatter";
4
-
5
- import { BuilderElement } from "./simple-elements";
6
-
7
- describe("BuilderElement", () => {
8
- describe("#constructor()", () => {
9
- it("should create a simple BuilderElement", () => {
10
- const element = new BuilderElement({
11
- name: "test",
12
- });
13
-
14
- const tree = new Formatter().format(element);
15
- expect(tree).to.deep.equal({
16
- test: {},
17
- });
18
- });
19
-
20
- it("should create a simple BuilderElement with attributes", () => {
21
- const element = new BuilderElement<{ readonly testAttr: string }>({
22
- name: "test",
23
- attributes: {
24
- testAttr: {
25
- key: "w:testAttr",
26
- value: "test",
27
- },
28
- },
29
- });
30
-
31
- const tree = new Formatter().format(element);
32
- expect(tree).to.deep.equal({
33
- test: {
34
- _attr: {
35
- "w:testAttr": "test",
36
- },
37
- },
38
- });
39
- });
40
- });
41
- });
@@ -1,98 +0,0 @@
1
- import { AttributeData, AttributePayload, Attributes, NextAttributeComponent, XmlComponent } from "@file/xml-components";
2
-
3
- import { hpsMeasureValue, PositiveUniversalMeasure } from "@util/values";
4
-
5
- // This represents element type CT_OnOff, which indicate a boolean value.
6
- //
7
- // A value of 1 or true specifies that the property shall be explicitly applied.
8
- // This is the default value for this attribute, and is implied when the parent
9
- // element is present, but this attribute is omitted.
10
- // A value of 0 or false specifies that the property shall be explicitly turned off.
11
- //
12
- // <xsd:complexType name="CT_OnOff">
13
- // <xsd:attribute name="val" type="s:ST_OnOff"/>
14
- // </xsd:complexType>
15
- export class OnOffElement extends XmlComponent {
16
- public constructor(name: string, val: boolean | undefined = true) {
17
- super(name);
18
- if (val !== true) {
19
- this.root.push(new Attributes({ val }));
20
- }
21
- }
22
- }
23
-
24
- // This represents element type CT_HpsMeasure, which indicate an unsigned int or a measurement with unit.
25
- //
26
- // <xsd:complexType name="CT_HpsMeasure">
27
- // <xsd:attribute name="val" type="ST_HpsMeasure" use="required"/>
28
- // </xsd:complexType>
29
-
30
- // <xsd:simpleType name="ST_HpsMeasure">
31
- // <xsd:union memberTypes="s:ST_UnsignedDecimalNumber s:ST_PositiveUniversalMeasure" />
32
- // </xsd:simpleType>
33
-
34
- export class HpsMeasureElement extends XmlComponent {
35
- public constructor(name: string, val: number | PositiveUniversalMeasure) {
36
- super(name);
37
- this.root.push(new Attributes({ val: hpsMeasureValue(val) }));
38
- }
39
- }
40
-
41
- // This represents element type CT_String, which indicate a string value.
42
- //
43
- // <xsd:complexType name="CT_Empty"/>
44
- export class EmptyElement extends XmlComponent {}
45
-
46
- // This represents element type CT_Empty, which indicate aan empty element.
47
- //
48
- // <xsd:complexType name="CT_String">
49
- // <xsd:attribute name="val" type="s:ST_String" use="required"/>
50
- // </xsd:complexType>
51
- export class StringValueElement extends XmlComponent {
52
- public constructor(name: string, val: string) {
53
- super(name);
54
- this.root.push(new Attributes({ val }));
55
- }
56
- }
57
-
58
- // This represents various number element types.
59
- export class NumberValueElement extends XmlComponent {
60
- public constructor(name: string, val: number) {
61
- super(name);
62
- this.root.push(new Attributes({ val }));
63
- }
64
- }
65
-
66
- export class StringEnumValueElement<T extends string> extends XmlComponent {
67
- public constructor(name: string, val: T) {
68
- super(name);
69
- this.root.push(new Attributes({ val }));
70
- }
71
- }
72
-
73
- // Simple nodes containing text.
74
- //
75
- // new StringContainer("hello", "world")
76
- // <hello>world</hello>
77
- export class StringContainer extends XmlComponent {
78
- public constructor(name: string, val: string) {
79
- super(name);
80
- this.root.push(val);
81
- }
82
- }
83
-
84
- export class BuilderElement<T extends AttributeData> extends XmlComponent {
85
- public constructor(options: {
86
- readonly name: string;
87
- readonly attributes?: AttributePayload<T>;
88
- readonly children?: readonly XmlComponent[];
89
- }) {
90
- super(options.name);
91
-
92
- if (options.attributes) {
93
- this.root.push(new NextAttributeComponent(options.attributes));
94
- }
95
-
96
- // TODO: Children
97
- }
98
- }
@@ -1,62 +0,0 @@
1
- import { expect } from "chai";
2
-
3
- import { Formatter } from "@export/formatter";
4
- import { Attributes, BaseXmlComponent, XmlComponent } from "./";
5
-
6
- class TestComponent extends XmlComponent {
7
- public push(el: BaseXmlComponent): void {
8
- this.root.push(el);
9
- }
10
- }
11
-
12
- describe("XmlComponent", () => {
13
- describe("#constructor()", () => {
14
- it("should create an Xml Component which has the correct rootKey", () => {
15
- const xmlComponent = new TestComponent("w:test");
16
- const tree = new Formatter().format(xmlComponent);
17
- expect(tree).to.deep.equal({
18
- "w:test": {},
19
- });
20
- });
21
- it("should handle children elements", () => {
22
- const xmlComponent = new TestComponent("w:test");
23
- xmlComponent.push(
24
- new Attributes({
25
- val: "test",
26
- }),
27
- );
28
- xmlComponent.push(new TestComponent("innerTest"));
29
-
30
- const tree = new Formatter().format(xmlComponent);
31
- expect(tree).to.deep.equal({
32
- "w:test": [
33
- {
34
- _attr: {
35
- "w:val": "test",
36
- },
37
- },
38
- {
39
- innerTest: {},
40
- },
41
- ],
42
- });
43
- });
44
- it("should hoist attrs if only attrs are present", () => {
45
- const xmlComponent = new TestComponent("w:test");
46
- xmlComponent.push(
47
- new Attributes({
48
- val: "test",
49
- }),
50
- );
51
-
52
- const tree = new Formatter().format(xmlComponent);
53
- expect(tree).to.deep.equal({
54
- "w:test": {
55
- _attr: {
56
- "w:val": "test",
57
- },
58
- },
59
- });
60
- });
61
- });
62
- });
@@ -1,63 +0,0 @@
1
- import { BaseXmlComponent, IContext } from "./base";
2
- import { IXmlableObject } from "./xmlable-object";
3
-
4
- export const EMPTY_OBJECT = Object.seal({});
5
-
6
- export abstract class XmlComponent extends BaseXmlComponent {
7
- // eslint-disable-next-line functional/prefer-readonly-type, @typescript-eslint/no-explicit-any
8
- protected root: (BaseXmlComponent | string | any)[];
9
-
10
- public constructor(rootKey: string) {
11
- super(rootKey);
12
- this.root = new Array<BaseXmlComponent | string>();
13
- }
14
-
15
- // This method is called by the formatter to get the XML representation of this component.
16
- // It is called recursively for all child components.
17
- // It is a serializer to be used in the xml library.
18
- // https://www.npmjs.com/package/xml
19
- // Child components can override this method to customize the XML representation, or execute side effects.
20
- public prepForXml(context: IContext): IXmlableObject | undefined {
21
- // Mutating the stack is required for performance reasons
22
- // eslint-disable-next-line functional/immutable-data
23
- context.stack.push(this);
24
- const children = this.root
25
- .map((comp) => {
26
- if (comp instanceof BaseXmlComponent) {
27
- return comp.prepForXml(context);
28
- }
29
- return comp;
30
- })
31
- .filter((comp) => comp !== undefined); // Exclude undefined
32
-
33
- // eslint-disable-next-line functional/immutable-data
34
- context.stack.pop();
35
- // If we only have a single IXmlableObject in our children array and it
36
- // represents our attributes, use the object itself as our children to
37
- // avoid an unneeded XML close element.
38
- // Additionally, if the array is empty, use an empty object as our
39
- // children in order to get an empty XML element generated.
40
- return {
41
- [this.rootKey]: children.length ? (children.length === 1 && children[0]?._attr ? children[0] : children) : EMPTY_OBJECT,
42
- };
43
- }
44
-
45
- public addChildElement(child: XmlComponent | string): XmlComponent {
46
- this.root.push(child);
47
-
48
- return this;
49
- }
50
- }
51
-
52
- export abstract class IgnoreIfEmptyXmlComponent extends XmlComponent {
53
- public prepForXml(context: IContext): IXmlableObject | undefined {
54
- const result = super.prepForXml(context);
55
- // Ignore the object if its falsey or is an empty object (would produce
56
- // an empty XML element if allowed to be included in the output).
57
- if (result && (typeof result[this.rootKey] !== "object" || Object.keys(result[this.rootKey]).length)) {
58
- return result;
59
- }
60
-
61
- return undefined;
62
- }
63
- }
@@ -1,12 +0,0 @@
1
- export interface IXmlAttribute {
2
- readonly [key: string]: string | number | boolean;
3
- }
4
- export interface IXmlableObject extends Object {
5
- readonly _attr?: IXmlAttribute;
6
- }
7
-
8
- // Needed because of: https://github.com/s-panferov/awesome-typescript-loader/issues/432
9
- /**
10
- * @ignore
11
- */
12
- export const WORKAROUND3 = "";
package/src/index.spec.ts DELETED
@@ -1,15 +0,0 @@
1
- import { expect } from "chai";
2
-
3
- import { Document } from "./index";
4
-
5
- describe("Index", () => {
6
- describe("Document", () => {
7
- it("should instantiate the Document", () => {
8
- expect(
9
- new Document({
10
- sections: [],
11
- }),
12
- ).to.be.ok;
13
- });
14
- });
15
- });
package/src/index.ts DELETED
@@ -1,7 +0,0 @@
1
- // Internally, the wrapper is a 'File', but export to the end user as a 'Document'
2
- // Use of 'File' also works
3
- export { File as Document } from "./file";
4
- export * from "./file";
5
- export * from "./export";
6
- export * from "./util";
7
- export * from "./patcher";
@@ -1,51 +0,0 @@
1
- import { expect } from "chai";
2
- import { appendContentType } from "./content-types-manager";
3
-
4
- describe("content-types-manager", () => {
5
- describe("appendContentType", () => {
6
- it("should append a content type", () => {
7
- const element = {
8
- type: "element",
9
- name: "xml",
10
- elements: [
11
- {
12
- type: "element",
13
- name: "Types",
14
- elements: [
15
- {
16
- type: "element",
17
- name: "Default",
18
- },
19
- ],
20
- },
21
- ],
22
- };
23
- appendContentType(element, "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml", "docx");
24
-
25
- expect(element).to.deep.equal({
26
- elements: [
27
- {
28
- elements: [
29
- {
30
- name: "Default",
31
- type: "element",
32
- },
33
- {
34
- attributes: {
35
- ContentType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml",
36
- Extension: "docx",
37
- },
38
- name: "Default",
39
- type: "element",
40
- },
41
- ],
42
- name: "Types",
43
- type: "element",
44
- },
45
- ],
46
- name: "xml",
47
- type: "element",
48
- });
49
- });
50
- });
51
- });
@@ -1,16 +0,0 @@
1
- import { Element } from "xml-js";
2
-
3
- import { getFirstLevelElements } from "./util";
4
-
5
- export const appendContentType = (element: Element, contentType: string, extension: string): void => {
6
- const relationshipElements = getFirstLevelElements(element, "Types");
7
- // eslint-disable-next-line functional/immutable-data
8
- relationshipElements.push({
9
- attributes: {
10
- ContentType: contentType,
11
- Extension: extension,
12
- },
13
- name: "Default",
14
- type: "element",
15
- });
16
- };