docxmlater 10.1.4 → 10.1.6

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 (372) hide show
  1. package/README.md +759 -754
  2. package/dist/constants/legacyCompatFlags.js +1 -1
  3. package/dist/constants/legacyCompatFlags.js.map +1 -1
  4. package/dist/constants/limits.js.map +1 -1
  5. package/dist/core/Document.d.ts +51 -50
  6. package/dist/core/Document.d.ts.map +1 -1
  7. package/dist/core/Document.js +486 -471
  8. package/dist/core/Document.js.map +1 -1
  9. package/dist/core/DocumentContent.d.ts +9 -9
  10. package/dist/core/DocumentContent.d.ts.map +1 -1
  11. package/dist/core/DocumentContent.js +1 -1
  12. package/dist/core/DocumentContent.js.map +1 -1
  13. package/dist/core/DocumentGenerator.d.ts +11 -11
  14. package/dist/core/DocumentGenerator.d.ts.map +1 -1
  15. package/dist/core/DocumentGenerator.js +251 -251
  16. package/dist/core/DocumentGenerator.js.map +1 -1
  17. package/dist/core/DocumentIdManager.js.map +1 -1
  18. package/dist/core/DocumentParser.d.ts +15 -15
  19. package/dist/core/DocumentParser.d.ts.map +1 -1
  20. package/dist/core/DocumentParser.js +2123 -2155
  21. package/dist/core/DocumentParser.js.map +1 -1
  22. package/dist/core/DocumentValidator.d.ts.map +1 -1
  23. package/dist/core/DocumentValidator.js +2 -5
  24. package/dist/core/DocumentValidator.js.map +1 -1
  25. package/dist/core/Relationship.js.map +1 -1
  26. package/dist/core/RelationshipManager.d.ts.map +1 -1
  27. package/dist/core/RelationshipManager.js +3 -3
  28. package/dist/core/RelationshipManager.js.map +1 -1
  29. package/dist/elements/AlternateContent.js.map +1 -1
  30. package/dist/elements/Bookmark.d.ts.map +1 -1
  31. package/dist/elements/Bookmark.js +3 -1
  32. package/dist/elements/Bookmark.js.map +1 -1
  33. package/dist/elements/BookmarkManager.d.ts.map +1 -1
  34. package/dist/elements/BookmarkManager.js.map +1 -1
  35. package/dist/elements/Comment.d.ts.map +1 -1
  36. package/dist/elements/Comment.js +9 -6
  37. package/dist/elements/Comment.js.map +1 -1
  38. package/dist/elements/CommentManager.d.ts.map +1 -1
  39. package/dist/elements/CommentManager.js +18 -17
  40. package/dist/elements/CommentManager.js.map +1 -1
  41. package/dist/elements/CommonTypes.d.ts +21 -21
  42. package/dist/elements/CommonTypes.d.ts.map +1 -1
  43. package/dist/elements/CommonTypes.js +56 -56
  44. package/dist/elements/CommonTypes.js.map +1 -1
  45. package/dist/elements/CustomXml.js.map +1 -1
  46. package/dist/elements/Endnote.d.ts.map +1 -1
  47. package/dist/elements/Endnote.js +6 -6
  48. package/dist/elements/Endnote.js.map +1 -1
  49. package/dist/elements/EndnoteManager.d.ts.map +1 -1
  50. package/dist/elements/EndnoteManager.js +6 -7
  51. package/dist/elements/EndnoteManager.js.map +1 -1
  52. package/dist/elements/Field.d.ts.map +1 -1
  53. package/dist/elements/Field.js +82 -25
  54. package/dist/elements/Field.js.map +1 -1
  55. package/dist/elements/FieldHelpers.d.ts.map +1 -1
  56. package/dist/elements/FieldHelpers.js.map +1 -1
  57. package/dist/elements/FontManager.d.ts.map +1 -1
  58. package/dist/elements/FontManager.js +1 -1
  59. package/dist/elements/FontManager.js.map +1 -1
  60. package/dist/elements/Footer.js +2 -2
  61. package/dist/elements/Footer.js.map +1 -1
  62. package/dist/elements/Footnote.d.ts.map +1 -1
  63. package/dist/elements/Footnote.js +6 -6
  64. package/dist/elements/Footnote.js.map +1 -1
  65. package/dist/elements/FootnoteManager.d.ts.map +1 -1
  66. package/dist/elements/FootnoteManager.js +6 -7
  67. package/dist/elements/FootnoteManager.js.map +1 -1
  68. package/dist/elements/Header.js +2 -2
  69. package/dist/elements/Header.js.map +1 -1
  70. package/dist/elements/HeaderFooterManager.js.map +1 -1
  71. package/dist/elements/Hyperlink.d.ts +5 -3
  72. package/dist/elements/Hyperlink.d.ts.map +1 -1
  73. package/dist/elements/Hyperlink.js +134 -76
  74. package/dist/elements/Hyperlink.js.map +1 -1
  75. package/dist/elements/Image.d.ts.map +1 -1
  76. package/dist/elements/Image.js +238 -106
  77. package/dist/elements/Image.js.map +1 -1
  78. package/dist/elements/ImageManager.d.ts.map +1 -1
  79. package/dist/elements/ImageManager.js +1 -1
  80. package/dist/elements/ImageManager.js.map +1 -1
  81. package/dist/elements/ImageRun.js +1 -1
  82. package/dist/elements/ImageRun.js.map +1 -1
  83. package/dist/elements/MathElement.js.map +1 -1
  84. package/dist/elements/Paragraph.d.ts +24 -24
  85. package/dist/elements/Paragraph.d.ts.map +1 -1
  86. package/dist/elements/Paragraph.js +181 -188
  87. package/dist/elements/Paragraph.js.map +1 -1
  88. package/dist/elements/PreservedElement.js.map +1 -1
  89. package/dist/elements/PropertyChangeTypes.d.ts.map +1 -1
  90. package/dist/elements/PropertyChangeTypes.js +6 -6
  91. package/dist/elements/PropertyChangeTypes.js.map +1 -1
  92. package/dist/elements/RangeMarker.d.ts.map +1 -1
  93. package/dist/elements/RangeMarker.js.map +1 -1
  94. package/dist/elements/Revision.d.ts.map +1 -1
  95. package/dist/elements/Revision.js +4 -5
  96. package/dist/elements/Revision.js.map +1 -1
  97. package/dist/elements/RevisionContent.js.map +1 -1
  98. package/dist/elements/RevisionManager.d.ts.map +1 -1
  99. package/dist/elements/RevisionManager.js +40 -48
  100. package/dist/elements/RevisionManager.js.map +1 -1
  101. package/dist/elements/Run.d.ts +16 -16
  102. package/dist/elements/Run.d.ts.map +1 -1
  103. package/dist/elements/Run.js +256 -238
  104. package/dist/elements/Run.js.map +1 -1
  105. package/dist/elements/Section.d.ts.map +1 -1
  106. package/dist/elements/Section.js +36 -11
  107. package/dist/elements/Section.js.map +1 -1
  108. package/dist/elements/Shape.d.ts.map +1 -1
  109. package/dist/elements/Shape.js.map +1 -1
  110. package/dist/elements/StructuredDocumentTag.d.ts +6 -6
  111. package/dist/elements/StructuredDocumentTag.d.ts.map +1 -1
  112. package/dist/elements/StructuredDocumentTag.js +99 -104
  113. package/dist/elements/StructuredDocumentTag.js.map +1 -1
  114. package/dist/elements/Table.d.ts +11 -11
  115. package/dist/elements/Table.d.ts.map +1 -1
  116. package/dist/elements/Table.js +102 -107
  117. package/dist/elements/Table.js.map +1 -1
  118. package/dist/elements/TableCell.d.ts +10 -10
  119. package/dist/elements/TableCell.d.ts.map +1 -1
  120. package/dist/elements/TableCell.js +105 -106
  121. package/dist/elements/TableCell.js.map +1 -1
  122. package/dist/elements/TableGridChange.d.ts.map +1 -1
  123. package/dist/elements/TableGridChange.js.map +1 -1
  124. package/dist/elements/TableOfContents.d.ts.map +1 -1
  125. package/dist/elements/TableOfContents.js +4 -4
  126. package/dist/elements/TableOfContents.js.map +1 -1
  127. package/dist/elements/TableOfContentsElement.js.map +1 -1
  128. package/dist/elements/TableRow.d.ts.map +1 -1
  129. package/dist/elements/TableRow.js +13 -6
  130. package/dist/elements/TableRow.js.map +1 -1
  131. package/dist/elements/TextBox.d.ts.map +1 -1
  132. package/dist/elements/TextBox.js +3 -5
  133. package/dist/elements/TextBox.js.map +1 -1
  134. package/dist/formatting/AbstractNumbering.d.ts +4 -4
  135. package/dist/formatting/AbstractNumbering.d.ts.map +1 -1
  136. package/dist/formatting/AbstractNumbering.js +54 -49
  137. package/dist/formatting/AbstractNumbering.js.map +1 -1
  138. package/dist/formatting/NumberingInstance.d.ts.map +1 -1
  139. package/dist/formatting/NumberingInstance.js +1 -3
  140. package/dist/formatting/NumberingInstance.js.map +1 -1
  141. package/dist/formatting/NumberingLevel.d.ts +5 -5
  142. package/dist/formatting/NumberingLevel.d.ts.map +1 -1
  143. package/dist/formatting/NumberingLevel.js +119 -125
  144. package/dist/formatting/NumberingLevel.js.map +1 -1
  145. package/dist/formatting/NumberingManager.d.ts +1 -0
  146. package/dist/formatting/NumberingManager.d.ts.map +1 -1
  147. package/dist/formatting/NumberingManager.js +27 -9
  148. package/dist/formatting/NumberingManager.js.map +1 -1
  149. package/dist/formatting/Style.d.ts +11 -11
  150. package/dist/formatting/Style.d.ts.map +1 -1
  151. package/dist/formatting/Style.js +219 -247
  152. package/dist/formatting/Style.js.map +1 -1
  153. package/dist/formatting/StylesManager.d.ts +2 -2
  154. package/dist/formatting/StylesManager.d.ts.map +1 -1
  155. package/dist/formatting/StylesManager.js +96 -102
  156. package/dist/formatting/StylesManager.js.map +1 -1
  157. package/dist/helpers/CleanupHelper.d.ts +1 -1
  158. package/dist/helpers/CleanupHelper.d.ts.map +1 -1
  159. package/dist/helpers/CleanupHelper.js +6 -6
  160. package/dist/helpers/CleanupHelper.js.map +1 -1
  161. package/dist/images/ImageOptimizer.js +7 -7
  162. package/dist/images/ImageOptimizer.js.map +1 -1
  163. package/dist/index.d.ts +9 -9
  164. package/dist/index.d.ts.map +1 -1
  165. package/dist/index.js.map +1 -1
  166. package/dist/managers/DrawingManager.js.map +1 -1
  167. package/dist/tracking/DocumentTrackingContext.d.ts.map +1 -1
  168. package/dist/tracking/DocumentTrackingContext.js +23 -7
  169. package/dist/tracking/DocumentTrackingContext.js.map +1 -1
  170. package/dist/tracking/TrackingContext.d.ts.map +1 -1
  171. package/dist/tracking/TrackingContext.js.map +1 -1
  172. package/dist/types/compatibility-types.js.map +1 -1
  173. package/dist/types/formatting.js.map +1 -1
  174. package/dist/types/list-types.d.ts +6 -6
  175. package/dist/types/list-types.js.map +1 -1
  176. package/dist/types/settings-types.js.map +1 -1
  177. package/dist/types/styleConfig.d.ts +2 -2
  178. package/dist/types/styleConfig.js.map +1 -1
  179. package/dist/utils/ChangelogGenerator.d.ts.map +1 -1
  180. package/dist/utils/ChangelogGenerator.js +97 -101
  181. package/dist/utils/ChangelogGenerator.js.map +1 -1
  182. package/dist/utils/CompatibilityUpgrader.d.ts.map +1 -1
  183. package/dist/utils/CompatibilityUpgrader.js +1 -1
  184. package/dist/utils/CompatibilityUpgrader.js.map +1 -1
  185. package/dist/utils/InMemoryRevisionAcceptor.d.ts.map +1 -1
  186. package/dist/utils/InMemoryRevisionAcceptor.js +1 -6
  187. package/dist/utils/InMemoryRevisionAcceptor.js.map +1 -1
  188. package/dist/utils/MoveOperationHelper.d.ts.map +1 -1
  189. package/dist/utils/MoveOperationHelper.js +1 -1
  190. package/dist/utils/MoveOperationHelper.js.map +1 -1
  191. package/dist/utils/RevisionAwareProcessor.d.ts.map +1 -1
  192. package/dist/utils/RevisionAwareProcessor.js +2 -4
  193. package/dist/utils/RevisionAwareProcessor.js.map +1 -1
  194. package/dist/utils/RevisionWalker.d.ts.map +1 -1
  195. package/dist/utils/RevisionWalker.js +4 -12
  196. package/dist/utils/RevisionWalker.js.map +1 -1
  197. package/dist/utils/SelectiveRevisionAcceptor.d.ts.map +1 -1
  198. package/dist/utils/SelectiveRevisionAcceptor.js +2 -6
  199. package/dist/utils/SelectiveRevisionAcceptor.js.map +1 -1
  200. package/dist/utils/ShadingResolver.d.ts.map +1 -1
  201. package/dist/utils/ShadingResolver.js +1 -1
  202. package/dist/utils/ShadingResolver.js.map +1 -1
  203. package/dist/utils/acceptRevisions.d.ts.map +1 -1
  204. package/dist/utils/acceptRevisions.js +23 -12
  205. package/dist/utils/acceptRevisions.js.map +1 -1
  206. package/dist/utils/cnfStyleDecoder.d.ts +1 -1
  207. package/dist/utils/cnfStyleDecoder.d.ts.map +1 -1
  208. package/dist/utils/cnfStyleDecoder.js +40 -40
  209. package/dist/utils/cnfStyleDecoder.js.map +1 -1
  210. package/dist/utils/corruptionDetection.d.ts.map +1 -1
  211. package/dist/utils/corruptionDetection.js.map +1 -1
  212. package/dist/utils/dateFormatting.js.map +1 -1
  213. package/dist/utils/deepClone.js +1 -1
  214. package/dist/utils/deepClone.js.map +1 -1
  215. package/dist/utils/diagnostics.d.ts.map +1 -1
  216. package/dist/utils/diagnostics.js +1 -1
  217. package/dist/utils/diagnostics.js.map +1 -1
  218. package/dist/utils/errorHandling.js.map +1 -1
  219. package/dist/utils/formatting.d.ts.map +1 -1
  220. package/dist/utils/formatting.js +10 -2
  221. package/dist/utils/formatting.js.map +1 -1
  222. package/dist/utils/list-detection.d.ts +2 -2
  223. package/dist/utils/list-detection.d.ts.map +1 -1
  224. package/dist/utils/list-detection.js +21 -23
  225. package/dist/utils/list-detection.js.map +1 -1
  226. package/dist/utils/logger.d.ts.map +1 -1
  227. package/dist/utils/logger.js +12 -7
  228. package/dist/utils/logger.js.map +1 -1
  229. package/dist/utils/parsingHelpers.js.map +1 -1
  230. package/dist/utils/stripTrackedChanges.d.ts.map +1 -1
  231. package/dist/utils/stripTrackedChanges.js +3 -3
  232. package/dist/utils/stripTrackedChanges.js.map +1 -1
  233. package/dist/utils/textDiff.d.ts +1 -1
  234. package/dist/utils/textDiff.js +8 -8
  235. package/dist/utils/textDiff.js.map +1 -1
  236. package/dist/utils/units.js.map +1 -1
  237. package/dist/utils/validation.d.ts.map +1 -1
  238. package/dist/utils/validation.js +24 -7
  239. package/dist/utils/validation.js.map +1 -1
  240. package/dist/utils/xmlSanitization.d.ts.map +1 -1
  241. package/dist/utils/xmlSanitization.js +3 -3
  242. package/dist/utils/xmlSanitization.js.map +1 -1
  243. package/dist/validation/RevisionAutoFixer.d.ts.map +1 -1
  244. package/dist/validation/RevisionAutoFixer.js +5 -5
  245. package/dist/validation/RevisionAutoFixer.js.map +1 -1
  246. package/dist/validation/RevisionValidator.d.ts.map +1 -1
  247. package/dist/validation/RevisionValidator.js +7 -9
  248. package/dist/validation/RevisionValidator.js.map +1 -1
  249. package/dist/validation/ValidationRules.js +3 -3
  250. package/dist/validation/ValidationRules.js.map +1 -1
  251. package/dist/validation/index.js.map +1 -1
  252. package/dist/xml/XMLBuilder.d.ts +1 -1
  253. package/dist/xml/XMLBuilder.d.ts.map +1 -1
  254. package/dist/xml/XMLBuilder.js +98 -100
  255. package/dist/xml/XMLBuilder.js.map +1 -1
  256. package/dist/xml/XMLParser.d.ts.map +1 -1
  257. package/dist/xml/XMLParser.js +61 -66
  258. package/dist/xml/XMLParser.js.map +1 -1
  259. package/dist/zip/ZipHandler.d.ts.map +1 -1
  260. package/dist/zip/ZipHandler.js.map +1 -1
  261. package/dist/zip/ZipReader.d.ts.map +1 -1
  262. package/dist/zip/ZipReader.js +1 -3
  263. package/dist/zip/ZipReader.js.map +1 -1
  264. package/dist/zip/ZipWriter.d.ts +1 -1
  265. package/dist/zip/ZipWriter.d.ts.map +1 -1
  266. package/dist/zip/ZipWriter.js +28 -36
  267. package/dist/zip/ZipWriter.js.map +1 -1
  268. package/dist/zip/types.js +1 -1
  269. package/dist/zip/types.js.map +1 -1
  270. package/package.json +92 -92
  271. package/src/__tests__/helper-methods.test.ts +512 -512
  272. package/src/constants/legacyCompatFlags.ts +138 -138
  273. package/src/constants/limits.ts +50 -50
  274. package/src/core/Document.ts +1010 -1145
  275. package/src/core/DocumentContent.ts +461 -467
  276. package/src/core/DocumentGenerator.ts +1133 -1104
  277. package/src/core/DocumentIdManager.ts +158 -158
  278. package/src/core/DocumentParser.ts +2347 -2716
  279. package/src/core/DocumentValidator.ts +363 -372
  280. package/src/core/Relationship.ts +367 -367
  281. package/src/core/RelationshipManager.ts +429 -428
  282. package/src/elements/AlternateContent.ts +42 -42
  283. package/src/elements/Bookmark.ts +212 -210
  284. package/src/elements/BookmarkManager.ts +247 -250
  285. package/src/elements/Comment.ts +356 -359
  286. package/src/elements/CommentManager.ts +499 -502
  287. package/src/elements/CommonTypes.ts +524 -549
  288. package/src/elements/CustomXml.ts +36 -36
  289. package/src/elements/Endnote.ts +221 -217
  290. package/src/elements/EndnoteManager.ts +246 -249
  291. package/src/elements/Field.ts +1292 -1233
  292. package/src/elements/FieldHelpers.ts +329 -333
  293. package/src/elements/FontManager.ts +336 -339
  294. package/src/elements/Footer.ts +269 -269
  295. package/src/elements/Footnote.ts +221 -217
  296. package/src/elements/FootnoteManager.ts +246 -249
  297. package/src/elements/Header.ts +269 -269
  298. package/src/elements/HeaderFooterManager.ts +219 -219
  299. package/src/elements/Hyperlink.ts +1288 -1193
  300. package/src/elements/Image.ts +1982 -1756
  301. package/src/elements/ImageManager.ts +437 -432
  302. package/src/elements/ImageRun.ts +59 -59
  303. package/src/elements/MathElement.ts +65 -65
  304. package/src/elements/Paragraph.ts +4347 -4287
  305. package/src/elements/PreservedElement.ts +53 -53
  306. package/src/elements/PropertyChangeTypes.ts +458 -442
  307. package/src/elements/RangeMarker.ts +382 -400
  308. package/src/elements/Revision.ts +1198 -1217
  309. package/src/elements/RevisionContent.ts +73 -73
  310. package/src/elements/RevisionManager.ts +1070 -1070
  311. package/src/elements/Run.ts +3103 -3073
  312. package/src/elements/Section.ts +1521 -1421
  313. package/src/elements/Shape.ts +884 -873
  314. package/src/elements/StructuredDocumentTag.ts +1176 -1207
  315. package/src/elements/Table.ts +2468 -2524
  316. package/src/elements/TableCell.ts +1617 -1621
  317. package/src/elements/TableGridChange.ts +149 -151
  318. package/src/elements/TableOfContents.ts +701 -691
  319. package/src/elements/TableOfContentsElement.ts +89 -89
  320. package/src/elements/TableRow.ts +960 -929
  321. package/src/elements/TextBox.ts +766 -768
  322. package/src/formatting/AbstractNumbering.ts +580 -579
  323. package/src/formatting/NumberingInstance.ts +295 -299
  324. package/src/formatting/NumberingLevel.ts +981 -1040
  325. package/src/formatting/NumberingManager.ts +875 -827
  326. package/src/formatting/Style.ts +1785 -1879
  327. package/src/formatting/StylesManager.ts +1090 -1130
  328. package/src/helpers/CleanupHelper.ts +524 -524
  329. package/src/images/ImageOptimizer.ts +274 -274
  330. package/src/index.ts +559 -554
  331. package/src/managers/DrawingManager.ts +319 -319
  332. package/src/tracking/DocumentTrackingContext.ts +687 -674
  333. package/src/tracking/TrackingContext.ts +175 -173
  334. package/src/types/compatibility-types.ts +49 -49
  335. package/src/types/formatting.ts +210 -210
  336. package/src/types/list-types.ts +14 -14
  337. package/src/types/settings-types.ts +59 -59
  338. package/src/types/styleConfig.ts +189 -189
  339. package/src/utils/ChangelogGenerator.ts +1583 -1581
  340. package/src/utils/CompatibilityUpgrader.ts +235 -237
  341. package/src/utils/InMemoryRevisionAcceptor.ts +691 -696
  342. package/src/utils/MoveOperationHelper.ts +233 -238
  343. package/src/utils/RevisionAwareProcessor.ts +518 -526
  344. package/src/utils/RevisionWalker.ts +427 -457
  345. package/src/utils/SelectiveRevisionAcceptor.ts +662 -683
  346. package/src/utils/ShadingResolver.ts +105 -107
  347. package/src/utils/acceptRevisions.ts +723 -714
  348. package/src/utils/cnfStyleDecoder.ts +212 -217
  349. package/src/utils/corruptionDetection.ts +346 -345
  350. package/src/utils/dateFormatting.ts +20 -20
  351. package/src/utils/deepClone.ts +77 -78
  352. package/src/utils/diagnostics.ts +125 -129
  353. package/src/utils/errorHandling.ts +80 -80
  354. package/src/utils/formatting.ts +220 -213
  355. package/src/utils/list-detection.ts +32 -42
  356. package/src/utils/logger.ts +412 -404
  357. package/src/utils/parsingHelpers.ts +190 -190
  358. package/src/utils/stripTrackedChanges.ts +356 -353
  359. package/src/utils/textDiff.ts +100 -100
  360. package/src/utils/units.ts +421 -421
  361. package/src/utils/validation.ts +553 -542
  362. package/src/utils/xmlSanitization.ts +179 -182
  363. package/src/validation/RevisionAutoFixer.ts +541 -542
  364. package/src/validation/RevisionValidator.ts +470 -460
  365. package/src/validation/ValidationRules.ts +338 -338
  366. package/src/validation/index.ts +30 -30
  367. package/src/xml/XMLBuilder.ts +857 -871
  368. package/src/xml/XMLParser.ts +877 -919
  369. package/src/zip/ZipHandler.ts +629 -637
  370. package/src/zip/ZipReader.ts +295 -299
  371. package/src/zip/ZipWriter.ts +374 -390
  372. package/src/zip/types.ts +116 -116
@@ -56,7 +56,7 @@ class Image {
56
56
  if (typeof mimeTypeOrProperties === 'string') {
57
57
  properties = {
58
58
  width: width,
59
- height: height
59
+ height: height,
60
60
  };
61
61
  }
62
62
  else {
@@ -205,30 +205,36 @@ class Image {
205
205
  return { valid: true };
206
206
  }
207
207
  const signatures = {
208
- png: [0x89, 0x50, 0x4E, 0x47],
209
- jpg: [0xFF, 0xD8],
210
- jpeg: [0xFF, 0xD8],
208
+ png: [0x89, 0x50, 0x4e, 0x47],
209
+ jpg: [0xff, 0xd8],
210
+ jpeg: [0xff, 0xd8],
211
211
  gif: [0x47, 0x49, 0x46],
212
- bmp: [0x42, 0x4D],
213
- tiff: [0x49, 0x49, 0x2A, 0x00],
214
- tif: [0x49, 0x49, 0x2A, 0x00]
212
+ bmp: [0x42, 0x4d],
213
+ tiff: [0x49, 0x49, 0x2a, 0x00],
214
+ tif: [0x49, 0x49, 0x2a, 0x00],
215
215
  };
216
216
  if (this.extension === 'emf') {
217
217
  if (this.imageData.length >= 44 &&
218
- this.imageData[40] === 0x20 && this.imageData[41] === 0x45 &&
219
- this.imageData[42] === 0x4D && this.imageData[43] === 0x46) {
218
+ this.imageData[40] === 0x20 &&
219
+ this.imageData[41] === 0x45 &&
220
+ this.imageData[42] === 0x4d &&
221
+ this.imageData[43] === 0x46) {
220
222
  return { valid: true };
221
223
  }
222
224
  return { valid: false, error: 'Invalid EMF signature' };
223
225
  }
224
226
  if (this.extension === 'wmf') {
225
227
  if (this.imageData.length >= 4) {
226
- if (this.imageData[0] === 0xD7 && this.imageData[1] === 0xCD &&
227
- this.imageData[2] === 0xC6 && this.imageData[3] === 0x9A) {
228
+ if (this.imageData[0] === 0xd7 &&
229
+ this.imageData[1] === 0xcd &&
230
+ this.imageData[2] === 0xc6 &&
231
+ this.imageData[3] === 0x9a) {
228
232
  return { valid: true };
229
233
  }
230
- if (this.imageData[0] === 0x01 && this.imageData[1] === 0x00 &&
231
- this.imageData[2] === 0x09 && this.imageData[3] === 0x00) {
234
+ if (this.imageData[0] === 0x01 &&
235
+ this.imageData[1] === 0x00 &&
236
+ this.imageData[2] === 0x09 &&
237
+ this.imageData[3] === 0x00) {
232
238
  return { valid: true };
233
239
  }
234
240
  }
@@ -253,26 +259,34 @@ class Image {
253
259
  }
254
260
  if (Buffer.isBuffer(this.source) && this.source.length >= 4) {
255
261
  const buf = this.source;
256
- if (buf[0] === 0x89 && buf[1] === 0x50 && buf[2] === 0x4E && buf[3] === 0x47)
262
+ if (buf[0] === 0x89 && buf[1] === 0x50 && buf[2] === 0x4e && buf[3] === 0x47)
257
263
  return 'png';
258
- if (buf[0] === 0xFF && buf[1] === 0xD8)
264
+ if (buf[0] === 0xff && buf[1] === 0xd8)
259
265
  return 'jpeg';
260
266
  if (buf[0] === 0x47 && buf[1] === 0x49 && buf[2] === 0x46)
261
267
  return 'gif';
262
- if (buf[0] === 0x42 && buf[1] === 0x4D)
268
+ if (buf[0] === 0x42 && buf[1] === 0x4d)
263
269
  return 'bmp';
264
- if (buf[0] === 0x49 && buf[1] === 0x49 && buf[2] === 0x2A && buf[3] === 0x00)
270
+ if (buf[0] === 0x49 && buf[1] === 0x49 && buf[2] === 0x2a && buf[3] === 0x00)
265
271
  return 'tiff';
266
- if (buf[0] === 0x4D && buf[1] === 0x4D && buf[2] === 0x00 && buf[3] === 0x2A)
272
+ if (buf[0] === 0x4d && buf[1] === 0x4d && buf[2] === 0x00 && buf[3] === 0x2a)
267
273
  return 'tiff';
268
- if (buf.length >= 44 && buf[0] === 0x01 && buf[1] === 0x00 && buf[2] === 0x00 && buf[3] === 0x00 &&
269
- buf[40] === 0x20 && buf[41] === 0x45 && buf[42] === 0x4D && buf[43] === 0x46)
274
+ if (buf.length >= 44 &&
275
+ buf[0] === 0x01 &&
276
+ buf[1] === 0x00 &&
277
+ buf[2] === 0x00 &&
278
+ buf[3] === 0x00 &&
279
+ buf[40] === 0x20 &&
280
+ buf[41] === 0x45 &&
281
+ buf[42] === 0x4d &&
282
+ buf[43] === 0x46)
270
283
  return 'emf';
271
- if (buf[0] === 0xD7 && buf[1] === 0xCD && buf[2] === 0xC6 && buf[3] === 0x9A)
284
+ if (buf[0] === 0xd7 && buf[1] === 0xcd && buf[2] === 0xc6 && buf[3] === 0x9a)
272
285
  return 'wmf';
273
286
  if (buf[0] === 0x01 && buf[1] === 0x00 && buf[2] === 0x09 && buf[3] === 0x00)
274
287
  return 'wmf';
275
- if (buf[0] === 0x3C || (buf[0] === 0xEF && buf[1] === 0xBB && buf[2] === 0xBF && buf.length > 3 && buf[3] === 0x3C))
288
+ if (buf[0] === 0x3c ||
289
+ (buf[0] === 0xef && buf[1] === 0xbb && buf[2] === 0xbf && buf.length > 3 && buf[3] === 0x3c))
276
290
  return 'svg';
277
291
  }
278
292
  return 'png';
@@ -280,7 +294,10 @@ class Image {
280
294
  detectDimensions() {
281
295
  if (!this.imageData || this.imageData.length < 24)
282
296
  return null;
283
- if (this.imageData[0] === 0x89 && this.imageData[1] === 0x50 && this.imageData[2] === 0x4e && this.imageData[3] === 0x47) {
297
+ if (this.imageData[0] === 0x89 &&
298
+ this.imageData[1] === 0x50 &&
299
+ this.imageData[2] === 0x4e &&
300
+ this.imageData[3] === 0x47) {
284
301
  return this.detectPngDimensions();
285
302
  }
286
303
  if (this.imageData[0] === 0xff && this.imageData[1] === 0xd8) {
@@ -297,16 +314,20 @@ class Image {
297
314
  return this.detectTiffDimensions();
298
315
  }
299
316
  if (this.imageData.length >= 44 &&
300
- this.imageData[40] === 0x20 && this.imageData[41] === 0x45 &&
301
- this.imageData[42] === 0x4D && this.imageData[43] === 0x46) {
317
+ this.imageData[40] === 0x20 &&
318
+ this.imageData[41] === 0x45 &&
319
+ this.imageData[42] === 0x4d &&
320
+ this.imageData[43] === 0x46) {
302
321
  return this.detectEmfDimensions();
303
322
  }
304
- if (this.imageData[0] === 0xD7 && this.imageData[1] === 0xCD &&
305
- this.imageData[2] === 0xC6 && this.imageData[3] === 0x9A) {
323
+ if (this.imageData[0] === 0xd7 &&
324
+ this.imageData[1] === 0xcd &&
325
+ this.imageData[2] === 0xc6 &&
326
+ this.imageData[3] === 0x9a) {
306
327
  return this.detectWmfDimensions();
307
328
  }
308
- if (this.imageData[0] === 0x3C ||
309
- (this.imageData[0] === 0xEF && this.imageData[1] === 0xBB && this.imageData[2] === 0xBF)) {
329
+ if (this.imageData[0] === 0x3c ||
330
+ (this.imageData[0] === 0xef && this.imageData[1] === 0xbb && this.imageData[2] === 0xbf)) {
310
331
  return this.detectSvgDimensions();
311
332
  }
312
333
  return null;
@@ -340,18 +361,26 @@ class Image {
340
361
  if (!this.imageData || this.imageData.length < 14)
341
362
  return null;
342
363
  const isLittleEndian = this.imageData[0] === 0x49;
343
- const ifdOffset = isLittleEndian ? this.imageData.readUInt32LE(4) : this.imageData.readUInt32BE(4);
364
+ const ifdOffset = isLittleEndian
365
+ ? this.imageData.readUInt32LE(4)
366
+ : this.imageData.readUInt32BE(4);
344
367
  if (ifdOffset + 14 > this.imageData.length)
345
368
  return null;
346
- const numEntries = isLittleEndian ? this.imageData.readUInt16LE(ifdOffset) : this.imageData.readUInt16BE(ifdOffset);
369
+ const numEntries = isLittleEndian
370
+ ? this.imageData.readUInt16LE(ifdOffset)
371
+ : this.imageData.readUInt16BE(ifdOffset);
347
372
  let width = 0;
348
373
  let height = 0;
349
374
  for (let i = 0; i < numEntries; i++) {
350
375
  const entryOffset = ifdOffset + 2 + i * 12;
351
376
  if (entryOffset + 12 > this.imageData.length)
352
377
  break;
353
- const tag = isLittleEndian ? this.imageData.readUInt16LE(entryOffset) : this.imageData.readUInt16BE(entryOffset);
354
- const value = isLittleEndian ? this.imageData.readUInt32LE(entryOffset + 8) : this.imageData.readUInt32BE(entryOffset + 8);
378
+ const tag = isLittleEndian
379
+ ? this.imageData.readUInt16LE(entryOffset)
380
+ : this.imageData.readUInt16BE(entryOffset);
381
+ const value = isLittleEndian
382
+ ? this.imageData.readUInt32LE(entryOffset + 8)
383
+ : this.imageData.readUInt32BE(entryOffset + 8);
355
384
  if (tag === 256)
356
385
  width = value;
357
386
  if (tag === 257)
@@ -377,7 +406,7 @@ class Image {
377
406
  offset++;
378
407
  continue;
379
408
  }
380
- const isSOF = (marker >= 0xc0 && marker <= 0xcf) && marker !== 0xc4 && marker !== 0xc8 && marker !== 0xcc;
409
+ const isSOF = marker >= 0xc0 && marker <= 0xcf && marker !== 0xc4 && marker !== 0xc8 && marker !== 0xcc;
381
410
  if (isSOF) {
382
411
  if (offset + 9 > this.imageData.length)
383
412
  break;
@@ -403,11 +432,17 @@ class Image {
403
432
  const widthMatch = /<svg[^>]*\bwidth\s*=\s*["']?(\d+(?:\.\d+)?)/i.exec(svgText);
404
433
  const heightMatch = /<svg[^>]*\bheight\s*=\s*["']?(\d+(?:\.\d+)?)/i.exec(svgText);
405
434
  if (widthMatch?.[1] && heightMatch?.[1]) {
406
- return { width: Math.round(parseFloat(widthMatch[1])), height: Math.round(parseFloat(heightMatch[1])) };
435
+ return {
436
+ width: Math.round(parseFloat(widthMatch[1])),
437
+ height: Math.round(parseFloat(heightMatch[1])),
438
+ };
407
439
  }
408
440
  const viewBoxMatch = /<svg[^>]*\bviewBox\s*=\s*["']?\s*[\d.]+\s+[\d.]+\s+([\d.]+)\s+([\d.]+)/i.exec(svgText);
409
441
  if (viewBoxMatch?.[1] && viewBoxMatch?.[2]) {
410
- return { width: Math.round(parseFloat(viewBoxMatch[1])), height: Math.round(parseFloat(viewBoxMatch[2])) };
442
+ return {
443
+ width: Math.round(parseFloat(viewBoxMatch[1])),
444
+ height: Math.round(parseFloat(viewBoxMatch[2])),
445
+ };
411
446
  }
412
447
  }
413
448
  catch {
@@ -556,16 +591,39 @@ class Image {
556
591
  getFlipV() {
557
592
  return this.flipV;
558
593
  }
559
- getPresetGeometry() { return this.presetGeometry; }
560
- setPresetGeometry(geom) { this.presetGeometry = geom; return this; }
561
- getCompressionState() { return this.compressionState; }
562
- setCompressionState(state) { this.compressionState = state; return this; }
563
- getBwMode() { return this.bwMode; }
564
- setBwMode(mode) { this.bwMode = mode; return this; }
565
- getInlineDistT() { return this.inlineDistT; }
566
- getInlineDistB() { return this.inlineDistB; }
567
- getInlineDistL() { return this.inlineDistL; }
568
- getInlineDistR() { return this.inlineDistR; }
594
+ getPresetGeometry() {
595
+ return this.presetGeometry;
596
+ }
597
+ setPresetGeometry(geom) {
598
+ this.presetGeometry = geom;
599
+ return this;
600
+ }
601
+ getCompressionState() {
602
+ return this.compressionState;
603
+ }
604
+ setCompressionState(state) {
605
+ this.compressionState = state;
606
+ return this;
607
+ }
608
+ getBwMode() {
609
+ return this.bwMode;
610
+ }
611
+ setBwMode(mode) {
612
+ this.bwMode = mode;
613
+ return this;
614
+ }
615
+ getInlineDistT() {
616
+ return this.inlineDistT;
617
+ }
618
+ getInlineDistB() {
619
+ return this.inlineDistB;
620
+ }
621
+ getInlineDistL() {
622
+ return this.inlineDistL;
623
+ }
624
+ getInlineDistR() {
625
+ return this.inlineDistR;
626
+ }
569
627
  setInlineDist(distT, distB, distL, distR) {
570
628
  this.inlineDistT = distT;
571
629
  this.inlineDistB = distB;
@@ -573,22 +631,62 @@ class Image {
573
631
  this.inlineDistR = distR;
574
632
  return this;
575
633
  }
576
- getNoChangeAspect() { return this.noChangeAspect; }
577
- setNoChangeAspect(val) { this.noChangeAspect = val; return this; }
578
- getHidden() { return this.hidden; }
579
- setHidden(val) { this.hidden = val; return this; }
580
- getBlipFillDpi() { return this.blipFillDpi; }
581
- setBlipFillDpi(dpi) { this.blipFillDpi = dpi; return this; }
582
- getBlipFillRotWithShape() { return this.blipFillRotWithShape; }
583
- setBlipFillRotWithShape(val) { this.blipFillRotWithShape = val; return this; }
584
- getPicLocks() { return { ...this.picLocks }; }
585
- setPicLocks(locks) { this.picLocks = locks; return this; }
586
- getPicNonVisualProps() { return { ...this.picNonVisualProps }; }
587
- setPicNonVisualProps(props) { this.picNonVisualProps = props; return this; }
588
- getIsLinked() { return this.isLinked; }
589
- setIsLinked(val) { this.isLinked = val; return this; }
590
- getSvgRelationshipId() { return this.svgRelationshipId; }
591
- setSvgRelationshipId(id) { this.svgRelationshipId = id; return this; }
634
+ getNoChangeAspect() {
635
+ return this.noChangeAspect;
636
+ }
637
+ setNoChangeAspect(val) {
638
+ this.noChangeAspect = val;
639
+ return this;
640
+ }
641
+ getHidden() {
642
+ return this.hidden;
643
+ }
644
+ setHidden(val) {
645
+ this.hidden = val;
646
+ return this;
647
+ }
648
+ getBlipFillDpi() {
649
+ return this.blipFillDpi;
650
+ }
651
+ setBlipFillDpi(dpi) {
652
+ this.blipFillDpi = dpi;
653
+ return this;
654
+ }
655
+ getBlipFillRotWithShape() {
656
+ return this.blipFillRotWithShape;
657
+ }
658
+ setBlipFillRotWithShape(val) {
659
+ this.blipFillRotWithShape = val;
660
+ return this;
661
+ }
662
+ getPicLocks() {
663
+ return { ...this.picLocks };
664
+ }
665
+ setPicLocks(locks) {
666
+ this.picLocks = locks;
667
+ return this;
668
+ }
669
+ getPicNonVisualProps() {
670
+ return { ...this.picNonVisualProps };
671
+ }
672
+ setPicNonVisualProps(props) {
673
+ this.picNonVisualProps = props;
674
+ return this;
675
+ }
676
+ getIsLinked() {
677
+ return this.isLinked;
678
+ }
679
+ setIsLinked(val) {
680
+ this.isLinked = val;
681
+ return this;
682
+ }
683
+ getSvgRelationshipId() {
684
+ return this.svgRelationshipId;
685
+ }
686
+ setSvgRelationshipId(id) {
687
+ this.svgRelationshipId = id;
688
+ return this;
689
+ }
592
690
  _setRawPassthrough(slot, xml) {
593
691
  this._rawPassthrough.set(slot, xml);
594
692
  }
@@ -598,7 +696,9 @@ class Image {
598
696
  _hasRawPassthrough(slot) {
599
697
  return this._rawPassthrough.has(slot);
600
698
  }
601
- getBorder() { return this.border; }
699
+ getBorder() {
700
+ return this.border;
701
+ }
602
702
  setEffectExtent(left, top, right, bottom) {
603
703
  this.effectExtent = { left, top, right, bottom };
604
704
  return this;
@@ -673,7 +773,14 @@ class Image {
673
773
  }
674
774
  setEffects(options) {
675
775
  const clamp = (val) => val !== undefined ? Math.max(-100, Math.min(100, val)) : undefined;
676
- this.effects = { brightness: clamp(options.brightness), contrast: clamp(options.contrast), grayscale: options.grayscale, transparency: options.transparency !== undefined ? Math.max(0, Math.min(100, options.transparency)) : undefined };
776
+ this.effects = {
777
+ brightness: clamp(options.brightness),
778
+ contrast: clamp(options.contrast),
779
+ grayscale: options.grayscale,
780
+ transparency: options.transparency !== undefined
781
+ ? Math.max(0, Math.min(100, options.transparency))
782
+ : undefined,
783
+ };
677
784
  return this;
678
785
  }
679
786
  getEffects() {
@@ -699,12 +806,13 @@ class Image {
699
806
  else if (this.extension === 'jpg' || this.extension === 'jpeg') {
700
807
  let offset = 2;
701
808
  while (offset < this.imageData.length) {
702
- if (this.imageData[offset] !== 0xFF)
809
+ if (this.imageData[offset] !== 0xff)
703
810
  break;
704
811
  const marker = this.imageData[offset + 1];
705
- if (marker === 0xE0) {
812
+ if (marker === 0xe0) {
706
813
  const length = this.imageData.readUInt16BE(offset + 2);
707
- if (length >= 16 && this.imageData.slice(offset + 4, offset + 9).toString('ascii') === 'JFIF\0') {
814
+ if (length >= 16 &&
815
+ this.imageData.slice(offset + 4, offset + 9).toString('ascii') === 'JFIF\0') {
708
816
  const units = this.imageData[offset + 11];
709
817
  const xDensity = this.imageData.readUInt16BE(offset + 12);
710
818
  const yDensity = this.imageData.readUInt16BE(offset + 14);
@@ -736,7 +844,7 @@ class Image {
736
844
  locked: false,
737
845
  layoutInCell: true,
738
846
  allowOverlap: true,
739
- relativeHeight: 251658240
847
+ relativeHeight: 251658240,
740
848
  });
741
849
  this.setWrap('square', 'bothSides');
742
850
  return this;
@@ -748,7 +856,7 @@ class Image {
748
856
  locked: false,
749
857
  layoutInCell: true,
750
858
  allowOverlap: true,
751
- relativeHeight: 251658240
859
+ relativeHeight: 251658240,
752
860
  });
753
861
  this.setWrap('square', 'bothSides');
754
862
  return this;
@@ -760,7 +868,7 @@ class Image {
760
868
  locked: false,
761
869
  layoutInCell: true,
762
870
  allowOverlap: true,
763
- relativeHeight: 251658240
871
+ relativeHeight: 251658240,
764
872
  });
765
873
  this.setWrap('square', 'bothSides');
766
874
  return this;
@@ -775,7 +883,7 @@ class Image {
775
883
  locked: false,
776
884
  layoutInCell: true,
777
885
  allowOverlap: true,
778
- relativeHeight: 251658240
886
+ relativeHeight: 251658240,
779
887
  });
780
888
  }
781
889
  return this;
@@ -807,7 +915,10 @@ class Image {
807
915
  }
808
916
  toXML() {
809
917
  const isFloating = this.isFloating();
810
- const extent = XMLBuilder_1.XMLBuilder.wp('extent', { cx: this.width.toString(), cy: this.height.toString() });
918
+ const extent = XMLBuilder_1.XMLBuilder.wp('extent', {
919
+ cx: this.width.toString(),
920
+ cy: this.height.toString(),
921
+ });
811
922
  const blipChildren = [];
812
923
  if (this.effects?.brightness !== undefined || this.effects?.contrast !== undefined) {
813
924
  const lumAttrs = {};
@@ -827,10 +938,16 @@ class Image {
827
938
  blipChildren.push(XMLBuilder_1.XMLBuilder.aSelf('alphaModFix', { amt: amt.toString() }));
828
939
  }
829
940
  if (this._rawPassthrough.has('blip-effects')) {
830
- blipChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('blip-effects') });
941
+ blipChildren.push({
942
+ name: '__rawXml',
943
+ rawXml: this._rawPassthrough.get('blip-effects'),
944
+ });
831
945
  }
832
946
  if (this._rawPassthrough.has('blip-extLst')) {
833
- blipChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('blip-extLst') });
947
+ blipChildren.push({
948
+ name: '__rawXml',
949
+ rawXml: this._rawPassthrough.get('blip-extLst'),
950
+ });
834
951
  }
835
952
  else if (this.svgRelationshipId) {
836
953
  blipChildren.push({
@@ -862,16 +979,17 @@ class Image {
862
979
  })();
863
980
  const xfrm = XMLBuilder_1.XMLBuilder.a('xfrm', xfrmAttrs, [
864
981
  XMLBuilder_1.XMLBuilder.a('off', { x: '0', y: '0' }),
865
- XMLBuilder_1.XMLBuilder.a('ext', { cx: this.width.toString(), cy: this.height.toString() })
982
+ XMLBuilder_1.XMLBuilder.a('ext', { cx: this.width.toString(), cy: this.height.toString() }),
866
983
  ]);
867
984
  const spPrChildren = [xfrm];
868
985
  if (this._rawPassthrough.has('geometry')) {
869
- spPrChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('geometry') });
986
+ spPrChildren.push({
987
+ name: '__rawXml',
988
+ rawXml: this._rawPassthrough.get('geometry'),
989
+ });
870
990
  }
871
991
  else {
872
- spPrChildren.push(XMLBuilder_1.XMLBuilder.a('prstGeom', { prst: this.presetGeometry }, [
873
- XMLBuilder_1.XMLBuilder.a('avLst')
874
- ]));
992
+ spPrChildren.push(XMLBuilder_1.XMLBuilder.a('prstGeom', { prst: this.presetGeometry }, [XMLBuilder_1.XMLBuilder.a('avLst')]));
875
993
  }
876
994
  if (this.border) {
877
995
  spPrChildren.push(XMLBuilder_1.XMLBuilder.a('noFill'));
@@ -901,9 +1019,7 @@ class Image {
901
1019
  lnChildren.push(XMLBuilder_1.XMLBuilder.a('solidFill', undefined, [colorEl]));
902
1020
  }
903
1021
  else {
904
- lnChildren.push(XMLBuilder_1.XMLBuilder.a('solidFill', undefined, [
905
- XMLBuilder_1.XMLBuilder.a('schemeClr', { val: 'tx1' })
906
- ]));
1022
+ lnChildren.push(XMLBuilder_1.XMLBuilder.a('solidFill', undefined, [XMLBuilder_1.XMLBuilder.a('schemeClr', { val: 'tx1' })]));
907
1023
  }
908
1024
  if (this.border.dashPattern) {
909
1025
  lnChildren.push(XMLBuilder_1.XMLBuilder.aSelf('prstDash', { val: this.border.dashPattern }));
@@ -929,11 +1045,17 @@ class Image {
929
1045
  spPrChildren.push(XMLBuilder_1.XMLBuilder.a('ln', lnAttrs, lnChildren));
930
1046
  }
931
1047
  if (this._rawPassthrough.has('spPr-effects')) {
932
- spPrChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('spPr-effects') });
1048
+ spPrChildren.push({
1049
+ name: '__rawXml',
1050
+ rawXml: this._rawPassthrough.get('spPr-effects'),
1051
+ });
933
1052
  }
934
1053
  const cNvPrChildren = [];
935
1054
  if (this._rawPassthrough.has('cNvPr-extra')) {
936
- cNvPrChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('cNvPr-extra') });
1055
+ cNvPrChildren.push({
1056
+ name: '__rawXml',
1057
+ rawXml: this._rawPassthrough.get('cNvPr-extra'),
1058
+ });
937
1059
  }
938
1060
  const cNvPr = cNvPrChildren.length > 0
939
1061
  ? XMLBuilder_1.XMLBuilder.pic('cNvPr', {
@@ -966,7 +1088,10 @@ class Image {
966
1088
  }));
967
1089
  }
968
1090
  if (this._rawPassthrough.has('blipFill-extra')) {
969
- blipFillChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('blipFill-extra') });
1091
+ blipFillChildren.push({
1092
+ name: '__rawXml',
1093
+ rawXml: this._rawPassthrough.get('blipFill-extra'),
1094
+ });
970
1095
  }
971
1096
  else {
972
1097
  blipFillChildren.push(XMLBuilder_1.XMLBuilder.a('stretch', undefined, [XMLBuilder_1.XMLBuilder.a('fillRect')]));
@@ -977,12 +1102,12 @@ class Image {
977
1102
  XMLBuilder_1.XMLBuilder.pic('nvPicPr', undefined, [
978
1103
  cNvPr,
979
1104
  XMLBuilder_1.XMLBuilder.pic('cNvPicPr', undefined, [
980
- XMLBuilder_1.XMLBuilder.a('picLocks', Object.keys(picLocksAttrs).length > 0 ? picLocksAttrs : undefined)
981
- ])
1105
+ XMLBuilder_1.XMLBuilder.a('picLocks', Object.keys(picLocksAttrs).length > 0 ? picLocksAttrs : undefined),
1106
+ ]),
982
1107
  ]),
983
1108
  XMLBuilder_1.XMLBuilder.pic('blipFill', blipFillAttrsObj, blipFillChildren),
984
- XMLBuilder_1.XMLBuilder.pic('spPr', { bwMode: this.bwMode }, spPrChildren)
985
- ])
1109
+ XMLBuilder_1.XMLBuilder.pic('spPr', { bwMode: this.bwMode }, spPrChildren),
1110
+ ]),
986
1111
  ]);
987
1112
  const graphic = XMLBuilder_1.XMLBuilder.a('graphic', undefined, [graphicData]);
988
1113
  const buildDocPr = (idVal) => {
@@ -993,7 +1118,10 @@ class Image {
993
1118
  attrs.hidden = '1';
994
1119
  const children = [];
995
1120
  if (this._rawPassthrough.has('docPr-extra')) {
996
- children.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('docPr-extra') });
1121
+ children.push({
1122
+ name: '__rawXml',
1123
+ rawXml: this._rawPassthrough.get('docPr-extra'),
1124
+ });
997
1125
  }
998
1126
  return children.length > 0
999
1127
  ? XMLBuilder_1.XMLBuilder.wp('docPr', attrs, children)
@@ -1004,7 +1132,7 @@ class Image {
1004
1132
  XMLBuilder_1.XMLBuilder.a('graphicFrameLocks', {
1005
1133
  'xmlns:a': 'http://schemas.openxmlformats.org/drawingml/2006/main',
1006
1134
  noChangeAspect: this.noChangeAspect ? '1' : '0',
1007
- })
1135
+ }),
1008
1136
  ]);
1009
1137
  };
1010
1138
  if (isFloating) {
@@ -1013,7 +1141,9 @@ class Image {
1013
1141
  positionHChildren.push(XMLBuilder_1.XMLBuilder.wp('align', undefined, [this.position.horizontal.alignment]));
1014
1142
  }
1015
1143
  else {
1016
- positionHChildren.push(XMLBuilder_1.XMLBuilder.wp('posOffset', undefined, [(this.position?.horizontal.offset || 0).toString()]));
1144
+ positionHChildren.push(XMLBuilder_1.XMLBuilder.wp('posOffset', undefined, [
1145
+ (this.position?.horizontal.offset || 0).toString(),
1146
+ ]));
1017
1147
  }
1018
1148
  const positionH = XMLBuilder_1.XMLBuilder.wp('positionH', { relativeFrom: this.position?.horizontal.anchor || 'page' }, positionHChildren);
1019
1149
  const positionVChildren = [];
@@ -1029,14 +1159,9 @@ class Image {
1029
1159
  t: floatEffectExt.top.toString(),
1030
1160
  r: floatEffectExt.right.toString(),
1031
1161
  b: floatEffectExt.bottom.toString(),
1032
- l: floatEffectExt.left.toString()
1162
+ l: floatEffectExt.left.toString(),
1033
1163
  });
1034
- const anchorChildren = [
1035
- positionH,
1036
- positionV,
1037
- extent,
1038
- effectExtentElement
1039
- ];
1164
+ const anchorChildren = [positionH, positionV, extent, effectExtentElement];
1040
1165
  if (this.wrap) {
1041
1166
  const wrapAttrs = {};
1042
1167
  if (this.wrap.distanceTop !== undefined)
@@ -1066,11 +1191,15 @@ class Image {
1066
1191
  case 'none':
1067
1192
  wrapElementName = 'wrapNone';
1068
1193
  break;
1069
- default: wrapElementName = 'wrapSquare';
1194
+ default:
1195
+ wrapElementName = 'wrapSquare';
1070
1196
  }
1071
1197
  const wrapChildren = [];
1072
1198
  if (this._rawPassthrough.has('wrap-polygon')) {
1073
- wrapChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('wrap-polygon') });
1199
+ wrapChildren.push({
1200
+ name: '__rawXml',
1201
+ rawXml: this._rawPassthrough.get('wrap-polygon'),
1202
+ });
1074
1203
  }
1075
1204
  else if (wrapElementName === 'wrapTight' || wrapElementName === 'wrapThrough') {
1076
1205
  wrapChildren.push({
@@ -1096,7 +1225,10 @@ class Image {
1096
1225
  anchorChildren.push(buildCNvGraphicFramePr());
1097
1226
  anchorChildren.push(graphic);
1098
1227
  if (this._rawPassthrough.has('anchor-extra')) {
1099
- anchorChildren.push({ name: '__rawXml', rawXml: this._rawPassthrough.get('anchor-extra') });
1228
+ anchorChildren.push({
1229
+ name: '__rawXml',
1230
+ rawXml: this._rawPassthrough.get('anchor-extra'),
1231
+ });
1100
1232
  }
1101
1233
  const anchorAttrs = {
1102
1234
  behindDoc: this.anchor?.behindDoc ? 1 : 0,
@@ -1114,7 +1246,7 @@ class Image {
1114
1246
  anchorAttrs.hidden = '1';
1115
1247
  anchorChildren.unshift(XMLBuilder_1.XMLBuilder.wp('simplePos', { x: '0', y: '0' }));
1116
1248
  return XMLBuilder_1.XMLBuilder.w('drawing', undefined, [
1117
- XMLBuilder_1.XMLBuilder.wp('anchor', anchorAttrs, anchorChildren)
1249
+ XMLBuilder_1.XMLBuilder.wp('anchor', anchorAttrs, anchorChildren),
1118
1250
  ]);
1119
1251
  }
1120
1252
  else {
@@ -1131,12 +1263,12 @@ class Image {
1131
1263
  t: effectExt.top.toString(),
1132
1264
  r: effectExt.right.toString(),
1133
1265
  b: effectExt.bottom.toString(),
1134
- l: effectExt.left.toString()
1266
+ l: effectExt.left.toString(),
1135
1267
  }),
1136
1268
  buildDocPr(this.docPrId.toString()),
1137
1269
  buildCNvGraphicFramePr(),
1138
- graphic
1139
- ])
1270
+ graphic,
1271
+ ]),
1140
1272
  ]);
1141
1273
  }
1142
1274
  }