ooxml-core 1.5.0 → 1.6.1

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 (341) hide show
  1. package/dist/{PptxHandler-ZPJNHEZZ.mjs → PptxHandler-BTXB54UC.mjs} +2 -2
  2. package/dist/automation/index.cjs +15757 -8955
  3. package/dist/automation/index.mjs +15757 -8955
  4. package/dist/chart/gradient-definition.d.ts +2 -0
  5. package/dist/chart/gradient-definition.d.ts.map +1 -1
  6. package/dist/chart/index.cjs +1 -1
  7. package/dist/chart/index.mjs +1 -1
  8. package/dist/{chunk-BB55ASTX.mjs → chunk-4L4UB3RQ.mjs} +3 -3
  9. package/dist/{chunk-QPQDLSJQ.mjs → chunk-5CJRDY7Q.mjs} +1 -1
  10. package/dist/{chunk-XGLKW3JJ.mjs → chunk-CS7HRNHL.mjs} +26 -3
  11. package/dist/{chunk-H4TPDZV4.mjs → chunk-Q5LESLDA.mjs} +1 -1
  12. package/dist/{chunk-IVDC75E5.mjs → chunk-RIFVZP2S.mjs} +1 -1
  13. package/dist/diagram/engine/text-measure.d.ts +1 -1
  14. package/dist/diagram/layout/smartart-font-table.d.ts +1 -1
  15. package/dist/diagram/layout/smartart-layout-interpreter-linear-content-size.d.ts +1 -1
  16. package/dist/diagram/layout/smartart-layout-item-font-size.d.ts +1 -1
  17. package/dist/diagram/layout/smartart-layout-item-font-tier-fit.d.ts +1 -1
  18. package/dist/diagram/layout/smartart-line-pitch.d.ts +1 -1
  19. package/dist/diagram/layout/smartart-text-wrap-fit.d.ts +1 -1
  20. package/dist/docx/index.cjs +1 -1
  21. package/dist/docx/index.mjs +1 -1
  22. package/dist/docx/layout/index.cjs +1 -1
  23. package/dist/docx/layout/index.mjs +1 -1
  24. package/dist/docx/ui/index.cjs +1 -1
  25. package/dist/docx/ui/index.mjs +1 -1
  26. package/dist/drawingml/index.cjs +102 -24
  27. package/dist/drawingml/index.d.ts +1 -0
  28. package/dist/drawingml/index.d.ts.map +1 -1
  29. package/dist/drawingml/index.mjs +102 -25
  30. package/dist/drawingml/write-theme.d.ts +17 -0
  31. package/dist/drawingml/write-theme.d.ts.map +1 -0
  32. package/dist/geometry/auto-align.d.ts +32 -0
  33. package/dist/geometry/auto-align.d.ts.map +1 -0
  34. package/dist/geometry/graph-layout.d.ts +37 -0
  35. package/dist/geometry/graph-layout.d.ts.map +1 -0
  36. package/dist/geometry/index.cjs +361 -7
  37. package/dist/geometry/index.d.ts +2 -0
  38. package/dist/geometry/index.d.ts.map +1 -1
  39. package/dist/geometry/index.mjs +359 -8
  40. package/dist/index.cjs +625 -123
  41. package/dist/index.mjs +625 -123
  42. package/dist/pptx/automation/index.cjs +26 -2
  43. package/dist/pptx/automation/index.d.ts +3 -3
  44. package/dist/pptx/automation/index.mjs +5 -5
  45. package/dist/pptx/chunks/{index-JNv7AJx5.d.ts → index-CKIUurnd.d.ts} +2 -2
  46. package/dist/pptx/chunks/{index-JNv7AJx5.d.ts.map → index-CKIUurnd.d.ts.map} +1 -1
  47. package/dist/pptx/chunks/{index-EZJZ7USt.d.ts → index-DkHgeV1p.d.ts} +3 -3
  48. package/dist/pptx/chunks/{index-EZJZ7USt.d.ts.map → index-DkHgeV1p.d.ts.map} +1 -1
  49. package/dist/pptx/chunks/{text-operations-DtCxXrMh.d.ts → text-operations-BHfAm5K9.d.ts} +8 -1
  50. package/dist/pptx/chunks/text-operations-BHfAm5K9.d.ts.map +1 -0
  51. package/dist/pptx/cli/index.cjs +26 -2
  52. package/dist/pptx/cli/index.d.ts +1 -1
  53. package/dist/pptx/cli/index.mjs +4 -4
  54. package/dist/pptx/converter/index.d.ts +1 -1
  55. package/dist/pptx/converter/index.mjs +2 -2
  56. package/dist/pptx/index.cjs +26 -2
  57. package/dist/pptx/index.d.ts +3 -3
  58. package/dist/pptx/index.mjs +5 -5
  59. package/dist/text/change-case.d.ts +20 -0
  60. package/dist/text/change-case.d.ts.map +1 -0
  61. package/dist/text/font-metrics/font-advance-widths-aptos-display.generated.d.ts +1 -1
  62. package/dist/text/font-metrics/font-advance-widths-aptos.generated.d.ts +1 -1
  63. package/dist/text/font-metrics/font-advance-widths-arial.generated.d.ts +1 -1
  64. package/dist/text/font-metrics/font-advance-widths-calibri-light.generated.d.ts +1 -1
  65. package/dist/text/font-metrics/font-advance-widths-calibri.generated.d.ts +1 -1
  66. package/dist/text/font-metrics/font-advance-widths-segoe-ui.generated.d.ts +1 -1
  67. package/dist/text/font-metrics/font-advance-widths-times-new-roman.generated.d.ts +1 -1
  68. package/dist/text/index.cjs +70 -0
  69. package/dist/text/index.d.ts +1 -0
  70. package/dist/text/index.d.ts.map +1 -1
  71. package/dist/text/index.mjs +68 -1
  72. package/dist/visio/arrow-shapes.d.ts +16 -0
  73. package/dist/visio/arrow-shapes.d.ts.map +1 -0
  74. package/dist/visio/basic-shapes.d.ts +2 -0
  75. package/dist/visio/basic-shapes.d.ts.map +1 -1
  76. package/dist/visio/comments.d.ts +39 -0
  77. package/dist/visio/comments.d.ts.map +1 -0
  78. package/dist/visio/connector-route.d.ts +31 -0
  79. package/dist/visio/connector-route.d.ts.map +1 -0
  80. package/dist/visio/data-recordsets.d.ts +66 -0
  81. package/dist/visio/data-recordsets.d.ts.map +1 -0
  82. package/dist/visio/edit-change-shape-commands.d.ts +17 -0
  83. package/dist/visio/edit-change-shape-commands.d.ts.map +1 -0
  84. package/dist/visio/edit-change-shape.d.ts +4 -0
  85. package/dist/visio/edit-change-shape.d.ts.map +1 -0
  86. package/dist/visio/edit-commands.d.ts +41 -6
  87. package/dist/visio/edit-commands.d.ts.map +1 -1
  88. package/dist/visio/edit-comment-commands.d.ts +32 -0
  89. package/dist/visio/edit-comment-commands.d.ts.map +1 -0
  90. package/dist/visio/edit-comments.d.ts +7 -0
  91. package/dist/visio/edit-comments.d.ts.map +1 -0
  92. package/dist/visio/edit-connection-points.d.ts +19 -0
  93. package/dist/visio/edit-connection-points.d.ts.map +1 -0
  94. package/dist/visio/edit-connector-commands.d.ts +57 -0
  95. package/dist/visio/edit-connector-commands.d.ts.map +1 -0
  96. package/dist/visio/edit-connector-glue.d.ts +43 -0
  97. package/dist/visio/edit-connector-glue.d.ts.map +1 -0
  98. package/dist/visio/edit-connector-layout.d.ts +37 -0
  99. package/dist/visio/edit-connector-layout.d.ts.map +1 -0
  100. package/dist/visio/edit-connector-reroute.d.ts +30 -0
  101. package/dist/visio/edit-connector-reroute.d.ts.map +1 -0
  102. package/dist/visio/edit-connector.d.ts +42 -0
  103. package/dist/visio/edit-connector.d.ts.map +1 -0
  104. package/dist/visio/edit-data-commands.d.ts +49 -0
  105. package/dist/visio/edit-data-commands.d.ts.map +1 -0
  106. package/dist/visio/edit-data-parts.d.ts +34 -0
  107. package/dist/visio/edit-data-parts.d.ts.map +1 -0
  108. package/dist/visio/edit-data.d.ts +8 -0
  109. package/dist/visio/edit-data.d.ts.map +1 -0
  110. package/dist/visio/edit-delete.d.ts.map +1 -1
  111. package/dist/visio/edit-diagram-parts-commands.d.ts +55 -0
  112. package/dist/visio/edit-diagram-parts-commands.d.ts.map +1 -0
  113. package/dist/visio/edit-diagram-parts.d.ts +16 -0
  114. package/dist/visio/edit-diagram-parts.d.ts.map +1 -0
  115. package/dist/visio/edit-ellipse-geometry.d.ts +2 -0
  116. package/dist/visio/edit-ellipse-geometry.d.ts.map +1 -1
  117. package/dist/visio/edit-foreign-bitmap.d.ts +7 -0
  118. package/dist/visio/edit-foreign-bitmap.d.ts.map +1 -0
  119. package/dist/visio/edit-formatting-cell-admission.d.ts +2 -0
  120. package/dist/visio/edit-formatting-cell-admission.d.ts.map +1 -1
  121. package/dist/visio/edit-formatting-commands.d.ts +14 -1
  122. package/dist/visio/edit-formatting-commands.d.ts.map +1 -1
  123. package/dist/visio/edit-formatting-effects.d.ts +50 -0
  124. package/dist/visio/edit-formatting-effects.d.ts.map +1 -0
  125. package/dist/visio/edit-formatting-glow.d.ts +43 -0
  126. package/dist/visio/edit-formatting-glow.d.ts.map +1 -0
  127. package/dist/visio/edit-formatting-paint-scope.d.ts.map +1 -1
  128. package/dist/visio/edit-formatting-paint.d.ts +6 -0
  129. package/dist/visio/edit-formatting-paint.d.ts.map +1 -1
  130. package/dist/visio/edit-formatting-scope.d.ts.map +1 -1
  131. package/dist/visio/edit-formatting-text-commands.d.ts +56 -0
  132. package/dist/visio/edit-formatting-text-commands.d.ts.map +1 -0
  133. package/dist/visio/edit-formatting-text-extra.d.ts +11 -0
  134. package/dist/visio/edit-formatting-text-extra.d.ts.map +1 -0
  135. package/dist/visio/edit-formatting-text.d.ts.map +1 -1
  136. package/dist/visio/edit-formatting-theme-context.d.ts +14 -0
  137. package/dist/visio/edit-formatting-theme-context.d.ts.map +1 -0
  138. package/dist/visio/edit-formatting.d.ts +2 -0
  139. package/dist/visio/edit-formatting.d.ts.map +1 -1
  140. package/dist/visio/edit-geometry-admission.d.ts +1 -1
  141. package/dist/visio/edit-geometry-admission.d.ts.map +1 -1
  142. package/dist/visio/edit-geometry.d.ts.map +1 -1
  143. package/dist/visio/edit-group-commands.d.ts +22 -0
  144. package/dist/visio/edit-group-commands.d.ts.map +1 -0
  145. package/dist/visio/edit-group-rotation.d.ts +7 -1
  146. package/dist/visio/edit-group-rotation.d.ts.map +1 -1
  147. package/dist/visio/edit-group.d.ts +17 -0
  148. package/dist/visio/edit-group.d.ts.map +1 -0
  149. package/dist/visio/edit-guide-commands.d.ts +26 -0
  150. package/dist/visio/edit-guide-commands.d.ts.map +1 -0
  151. package/dist/visio/edit-guides.d.ts +4 -0
  152. package/dist/visio/edit-guides.d.ts.map +1 -0
  153. package/dist/visio/edit-layer-commands.d.ts +20 -0
  154. package/dist/visio/edit-layer-commands.d.ts.map +1 -0
  155. package/dist/visio/edit-layers.d.ts +7 -0
  156. package/dist/visio/edit-layers.d.ts.map +1 -0
  157. package/dist/visio/edit-metadata-commands.d.ts +46 -0
  158. package/dist/visio/edit-metadata-commands.d.ts.map +1 -0
  159. package/dist/visio/edit-metadata.d.ts +4 -0
  160. package/dist/visio/edit-metadata.d.ts.map +1 -0
  161. package/dist/visio/edit-page-auto-size.d.ts +19 -0
  162. package/dist/visio/edit-page-auto-size.d.ts.map +1 -0
  163. package/dist/visio/edit-page-create.d.ts +24 -0
  164. package/dist/visio/edit-page-create.d.ts.map +1 -0
  165. package/dist/visio/edit-page-decoration.d.ts +14 -0
  166. package/dist/visio/edit-page-decoration.d.ts.map +1 -0
  167. package/dist/visio/edit-page-setup-commands.d.ts +57 -0
  168. package/dist/visio/edit-page-setup-commands.d.ts.map +1 -0
  169. package/dist/visio/edit-page-setup.d.ts +13 -0
  170. package/dist/visio/edit-page-setup.d.ts.map +1 -0
  171. package/dist/visio/edit-page-size.d.ts +4 -0
  172. package/dist/visio/edit-page-size.d.ts.map +1 -1
  173. package/dist/visio/edit-page-theme-commands.d.ts +15 -0
  174. package/dist/visio/edit-page-theme-commands.d.ts.map +1 -0
  175. package/dist/visio/edit-page-theme-recolor.d.ts +3 -0
  176. package/dist/visio/edit-page-theme-recolor.d.ts.map +1 -0
  177. package/dist/visio/edit-page-theme.d.ts +10 -0
  178. package/dist/visio/edit-page-theme.d.ts.map +1 -0
  179. package/dist/visio/edit-pages.d.ts.map +1 -1
  180. package/dist/visio/edit-path-commands.d.ts +19 -0
  181. package/dist/visio/edit-path-commands.d.ts.map +1 -0
  182. package/dist/visio/edit-path-create.d.ts +23 -0
  183. package/dist/visio/edit-path-create.d.ts.map +1 -0
  184. package/dist/visio/edit-picture.d.ts +7 -0
  185. package/dist/visio/edit-picture.d.ts.map +1 -0
  186. package/dist/visio/edit-recalculate-index.d.ts +2 -0
  187. package/dist/visio/edit-recalculate-index.d.ts.map +1 -1
  188. package/dist/visio/edit-resize-anchor.d.ts +1 -1
  189. package/dist/visio/edit-resize-anchor.d.ts.map +1 -1
  190. package/dist/visio/edit-scope.d.ts.map +1 -1
  191. package/dist/visio/edit-shape-create.d.ts +8 -0
  192. package/dist/visio/edit-shape-create.d.ts.map +1 -1
  193. package/dist/visio/edit-shape-data-commands.d.ts +34 -0
  194. package/dist/visio/edit-shape-data-commands.d.ts.map +1 -0
  195. package/dist/visio/edit-shape-data.d.ts +22 -0
  196. package/dist/visio/edit-shape-data.d.ts.map +1 -0
  197. package/dist/visio/edit-shape-order.d.ts.map +1 -1
  198. package/dist/visio/edit-subprocess-commands.d.ts +27 -0
  199. package/dist/visio/edit-subprocess-commands.d.ts.map +1 -0
  200. package/dist/visio/edit-subprocess.d.ts +9 -0
  201. package/dist/visio/edit-subprocess.d.ts.map +1 -0
  202. package/dist/visio/edit-text-field-commands.d.ts +21 -0
  203. package/dist/visio/edit-text-field-commands.d.ts.map +1 -0
  204. package/dist/visio/edit-text-field.d.ts +5 -0
  205. package/dist/visio/edit-text-field.d.ts.map +1 -0
  206. package/dist/visio/edit-text-range-plan.d.ts.map +1 -1
  207. package/dist/visio/edit-text-ranges.d.ts.map +1 -1
  208. package/dist/visio/edit-text.d.ts.map +1 -1
  209. package/dist/visio/edit.d.ts +2 -1
  210. package/dist/visio/edit.d.ts.map +1 -1
  211. package/dist/visio/effects.d.ts +13 -0
  212. package/dist/visio/effects.d.ts.map +1 -0
  213. package/dist/visio/formula-evaluate.d.ts.map +1 -1
  214. package/dist/visio/index.cjs +26474 -19318
  215. package/dist/visio/index.d.ts +25 -1
  216. package/dist/visio/index.d.ts.map +1 -1
  217. package/dist/visio/index.mjs +26406 -19319
  218. package/dist/visio/model.d.ts +125 -0
  219. package/dist/visio/model.d.ts.map +1 -1
  220. package/dist/visio/page-decoration.d.ts +66 -0
  221. package/dist/visio/page-decoration.d.ts.map +1 -0
  222. package/dist/visio/page-scale.d.ts.map +1 -1
  223. package/dist/visio/page-setup.d.ts +8 -0
  224. package/dist/visio/page-setup.d.ts.map +1 -0
  225. package/dist/visio/page-theme.d.ts +9 -0
  226. package/dist/visio/page-theme.d.ts.map +1 -0
  227. package/dist/visio/paper-sizes.d.ts +24 -0
  228. package/dist/visio/paper-sizes.d.ts.map +1 -0
  229. package/dist/visio/parser.d.ts.map +1 -1
  230. package/dist/visio/path-fit.d.ts +69 -0
  231. package/dist/visio/path-fit.d.ts.map +1 -0
  232. package/dist/visio/shadow.d.ts +9 -0
  233. package/dist/visio/shadow.d.ts.map +1 -0
  234. package/dist/visio/shape-connections.d.ts +5 -0
  235. package/dist/visio/shape-connections.d.ts.map +1 -0
  236. package/dist/visio/shape-metadata.d.ts +3 -0
  237. package/dist/visio/shape-metadata.d.ts.map +1 -1
  238. package/dist/visio/shape-structure.d.ts +10 -0
  239. package/dist/visio/shape-structure.d.ts.map +1 -0
  240. package/dist/visio/shapes.d.ts.map +1 -1
  241. package/dist/visio/stencil-shapes.d.ts +20 -0
  242. package/dist/visio/stencil-shapes.d.ts.map +1 -0
  243. package/dist/visio/stencils.d.ts +30 -0
  244. package/dist/visio/stencils.d.ts.map +1 -0
  245. package/dist/visio/style.d.ts +3 -0
  246. package/dist/visio/style.d.ts.map +1 -1
  247. package/dist/visio/text-character.d.ts +5 -0
  248. package/dist/visio/text-character.d.ts.map +1 -0
  249. package/dist/visio/text-field-context.d.ts +6 -0
  250. package/dist/visio/text-field-context.d.ts.map +1 -0
  251. package/dist/visio/text-field-display.d.ts +12 -0
  252. package/dist/visio/text-field-display.d.ts.map +1 -0
  253. package/dist/visio/text-fields.d.ts +65 -0
  254. package/dist/visio/text-fields.d.ts.map +1 -0
  255. package/dist/visio/theme-builtins.d.ts +32 -0
  256. package/dist/visio/theme-builtins.d.ts.map +1 -0
  257. package/dist/visio/theme-write.d.ts +4 -0
  258. package/dist/visio/theme-write.d.ts.map +1 -0
  259. package/dist/visio/theme.d.ts +2 -0
  260. package/dist/visio/theme.d.ts.map +1 -1
  261. package/dist/visio/ui/auto-layout.d.ts +38 -0
  262. package/dist/visio/ui/auto-layout.d.ts.map +1 -0
  263. package/dist/visio/ui/change-case.d.ts +12 -0
  264. package/dist/visio/ui/change-case.d.ts.map +1 -0
  265. package/dist/visio/ui/connection-points.d.ts +45 -0
  266. package/dist/visio/ui/connection-points.d.ts.map +1 -0
  267. package/dist/visio/ui/connector-preview.d.ts +24 -0
  268. package/dist/visio/ui/connector-preview.d.ts.map +1 -0
  269. package/dist/visio/ui/data-graphic-rules.d.ts +45 -0
  270. package/dist/visio/ui/data-graphic-rules.d.ts.map +1 -0
  271. package/dist/visio/ui/data-graphics.d.ts +15 -0
  272. package/dist/visio/ui/data-graphics.d.ts.map +1 -0
  273. package/dist/visio/ui/data-table.d.ts +33 -0
  274. package/dist/visio/ui/data-table.d.ts.map +1 -0
  275. package/dist/visio/ui/diagram-check.d.ts +32 -0
  276. package/dist/visio/ui/diagram-check.d.ts.map +1 -0
  277. package/dist/visio/ui/diagram-parts.d.ts +20 -0
  278. package/dist/visio/ui/diagram-parts.d.ts.map +1 -0
  279. package/dist/visio/ui/draw-path-plan.d.ts +21 -0
  280. package/dist/visio/ui/draw-path-plan.d.ts.map +1 -0
  281. package/dist/visio/ui/draw-plan.d.ts +11 -3
  282. package/dist/visio/ui/draw-plan.d.ts.map +1 -1
  283. package/dist/visio/ui/edit-commands.d.ts.map +1 -1
  284. package/dist/visio/ui/format-painter.d.ts +25 -0
  285. package/dist/visio/ui/format-painter.d.ts.map +1 -0
  286. package/dist/visio/ui/guides.d.ts +34 -0
  287. package/dist/visio/ui/guides.d.ts.map +1 -0
  288. package/dist/visio/ui/index.cjs +8006 -2705
  289. package/dist/visio/ui/index.d.ts +25 -0
  290. package/dist/visio/ui/index.d.ts.map +1 -1
  291. package/dist/visio/ui/index.mjs +7894 -2706
  292. package/dist/visio/ui/insert.d.ts +26 -0
  293. package/dist/visio/ui/insert.d.ts.map +1 -0
  294. package/dist/visio/ui/layer-assign.d.ts +31 -0
  295. package/dist/visio/ui/layer-assign.d.ts.map +1 -0
  296. package/dist/visio/ui/page-edit.d.ts.map +1 -1
  297. package/dist/visio/ui/page-setup.d.ts +50 -0
  298. package/dist/visio/ui/page-setup.d.ts.map +1 -0
  299. package/dist/visio/ui/page-size.d.ts +2 -11
  300. package/dist/visio/ui/page-size.d.ts.map +1 -1
  301. package/dist/visio/ui/paste-text.d.ts +13 -0
  302. package/dist/visio/ui/paste-text.d.ts.map +1 -0
  303. package/dist/visio/ui/scene-data.d.ts +4 -0
  304. package/dist/visio/ui/scene-data.d.ts.map +1 -0
  305. package/dist/visio/ui/scene-details.d.ts.map +1 -1
  306. package/dist/visio/ui/scene-validation-text.d.ts +8 -0
  307. package/dist/visio/ui/scene-validation-text.d.ts.map +1 -0
  308. package/dist/visio/ui/scene-validation.d.ts.map +1 -1
  309. package/dist/visio/ui/select-by-type.d.ts +35 -0
  310. package/dist/visio/ui/select-by-type.d.ts.map +1 -0
  311. package/dist/visio/ui/shape-arrange.d.ts.map +1 -1
  312. package/dist/visio/ui/shape-change.d.ts +11 -0
  313. package/dist/visio/ui/shape-change.d.ts.map +1 -0
  314. package/dist/visio/ui/shape-effects.d.ts +14 -0
  315. package/dist/visio/ui/shape-effects.d.ts.map +1 -0
  316. package/dist/visio/ui/shape-formatting.d.ts +5 -0
  317. package/dist/visio/ui/shape-formatting.d.ts.map +1 -1
  318. package/dist/visio/ui/shape-group.d.ts +9 -0
  319. package/dist/visio/ui/shape-group.d.ts.map +1 -0
  320. package/dist/visio/ui/shape-move.d.ts +5 -2
  321. package/dist/visio/ui/shape-move.d.ts.map +1 -1
  322. package/dist/visio/ui/shape-report.d.ts +37 -0
  323. package/dist/visio/ui/shape-report.d.ts.map +1 -0
  324. package/dist/visio/ui/shape-resize.d.ts.map +1 -1
  325. package/dist/visio/ui/shape-rotation.d.ts.map +1 -1
  326. package/dist/visio/ui/snapshot-scene.d.ts.map +1 -1
  327. package/dist/visio/ui/subprocess.d.ts +13 -0
  328. package/dist/visio/ui/subprocess.d.ts.map +1 -0
  329. package/dist/visio/ui/text-block.d.ts +42 -0
  330. package/dist/visio/ui/text-block.d.ts.map +1 -0
  331. package/dist/visio/ui/text-dialog.d.ts +54 -0
  332. package/dist/visio/ui/text-dialog.d.ts.map +1 -0
  333. package/dist/visio/ui/text-draft.d.ts +25 -0
  334. package/dist/visio/ui/text-draft.d.ts.map +1 -0
  335. package/dist/visio/ui/text-field-catalog.d.ts +17 -0
  336. package/dist/visio/ui/text-field-catalog.d.ts.map +1 -0
  337. package/dist/xlsx/formula/test-helpers.d.ts +9 -9
  338. package/dist/xlsx/index.cjs +1 -1
  339. package/dist/xlsx/index.mjs +1 -1
  340. package/package.json +1 -1
  341. package/dist/pptx/chunks/text-operations-DtCxXrMh.d.ts.map +0 -1
@@ -40,6 +40,8 @@ export type ChartSvgGradientDef = {
40
40
  } | {
41
41
  kind: 'linearGradient';
42
42
  id: string;
43
+ /** Absent means `objectBoundingBox`; strokes use user space (a flat line has no height). */
44
+ gradientUnits?: 'userSpaceOnUse';
43
45
  x1: number;
44
46
  y1: number;
45
47
  x2: number;
@@ -1 +1 @@
1
- {"version":3,"file":"gradient-definition.d.ts","sourceRoot":"","sources":["../../chart/gradient-definition.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIpE,OAAO,EAAqB,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,EAEN,KAAK,0BAA0B,EAC/B,MAAM,iCAAiC,CAAC;AAEzC,iGAAiG;AACjG,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,qBAAqB,GAC9B,iBAAiB,CAGnB;AACD,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,UAAU,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACxC;AACD,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,+EAA+E;AAC/E,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AACD,MAAM,MAAM,mBAAmB,GAC5B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,oBAAoB,EAAE,CAAA;CAAE,GAC7E;IACA,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC7B,GACD;IACA,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC7B,CAAC;AAEL,qFAAqF;AACrF,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,EAChD,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GAC1E,iBAAiB,CA2BnB;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CACpC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,iBAAiB,EACvB,MAAM,CAAC,EAAE,mBAAmB,GAC1B,mBAAmB,CAwErB"}
1
+ {"version":3,"file":"gradient-definition.d.ts","sourceRoot":"","sources":["../../chart/gradient-definition.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAIpE,OAAO,EAAqB,KAAK,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,EAEN,KAAK,0BAA0B,EAC/B,MAAM,iCAAiC,CAAC;AAEzC,iGAAiG;AACjG,wBAAgB,0BAA0B,CACzC,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,qBAAqB,GAC9B,iBAAiB,CAGnB;AACD,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,UAAU,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACxC;AACD,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,+EAA+E;AAC/E,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AACD,MAAM,MAAM,mBAAmB,GAC5B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,oBAAoB,EAAE,CAAA;CAAE,GAC7E;IACA,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,4FAA4F;IAC5F,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC7B,GACD;IACA,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC7B,CAAC;AAEL,qFAAqF;AACrF,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,EAChD,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GAC1E,iBAAiB,CA2BnB;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CACpC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,iBAAiB,EACvB,MAAM,CAAC,EAAE,mBAAmB,GAC1B,mBAAmB,CAwErB"}
@@ -2345,7 +2345,7 @@ function escapeXmlAttr(value) {
2345
2345
  function chartGradientMarkup(def) {
2346
2346
  if (def.kind === "rectPath")
2347
2347
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
2348
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2348
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2349
2349
  const stops = def.stops.map(
2350
2350
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
2351
2351
  ).join("");
@@ -2343,7 +2343,7 @@ function escapeXmlAttr(value) {
2343
2343
  function chartGradientMarkup(def) {
2344
2344
  if (def.kind === "rectPath")
2345
2345
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
2346
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2346
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2347
2347
  const stops = def.stops.map(
2348
2348
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
2349
2349
  ).join("");
@@ -1,6 +1,6 @@
1
- import { findText, replaceText, replaceTextInSlide, mergePresentation } from './chunk-IVDC75E5.mjs';
2
- import { PresentationBuilder, PptxHandler, SlideBuilder, validateSeriesIndex, removeEmptyDataPoint, ensureDataPoint, ensureChartData, assertChartGradientSupported, toChartGradientFill, STANDARD_LAYOUTS, createTextElement, createShapeElement, createImageElement, createTableElement, createChartElement, createConnectorElement, createMediaElement, createGroupElement, PptxXmlBuilder } from './chunk-XGLKW3JJ.mjs';
3
- import { escAttr, EMU_PER_PIXEL, EMU_PER_INCH, hasTextProperties } from './chunk-H4TPDZV4.mjs';
1
+ import { findText, replaceText, replaceTextInSlide, mergePresentation } from './chunk-RIFVZP2S.mjs';
2
+ import { PresentationBuilder, PptxHandler, SlideBuilder, validateSeriesIndex, removeEmptyDataPoint, ensureDataPoint, ensureChartData, assertChartGradientSupported, toChartGradientFill, STANDARD_LAYOUTS, createTextElement, createShapeElement, createImageElement, createTableElement, createChartElement, createConnectorElement, createMediaElement, createGroupElement, PptxXmlBuilder } from './chunk-CS7HRNHL.mjs';
3
+ import { escAttr, EMU_PER_PIXEL, EMU_PER_INCH, hasTextProperties } from './chunk-Q5LESLDA.mjs';
4
4
  import { cloneSlide, cloneElement } from './chunk-54S5A5PZ.mjs';
5
5
  import JSZip from 'jszip';
6
6
 
@@ -1,4 +1,4 @@
1
- import { hasTextProperties, isImageLikeElement, blobUrlToDataUrl, getSubstituteFontFamily, stripXmlOrderSuffix } from './chunk-H4TPDZV4.mjs';
1
+ import { hasTextProperties, isImageLikeElement, blobUrlToDataUrl, getSubstituteFontFamily, stripXmlOrderSuffix } from './chunk-Q5LESLDA.mjs';
2
2
 
3
3
  // pptx/converter/media-context.ts
4
4
  var MIME_TO_EXT = {
@@ -1,4 +1,4 @@
1
- import { SMART_ART_DEFINITION_PARTS, VML_SHAPE_TAGS, isAlternateContentChoiceXmlSupported, parseVmlElement, unwrapAlternateContent, xmlChild, xmlAttr, parseDrawingMediaReference, cropShapeForPresetGeometry, isHeaderFooterPlaceholder, xmlPath, inheritedPlaceholderFieldType, parseParagraphLevel, xmlHasChild, parseParagraphExtraAttributes, parseParagraphMargins, parseAlignmentAttr, parseParagraphRtl, parseTabStops, resolveParagraphAlignment, xmlText, parseBodyPrBooleanAttrs, selectAlternateContentBranch, parseBulletSizePercent, extractColorChoiceXml, formatAutoNumberMarker, parseParagraphSpacingPx, createBuiltinVariables, resolveCoordinate, parseStructuredCustomGeometry, parseAdjustmentValues, parseGuideDefinitions, evaluateGuides, evaluateGeometryPaths, inheritCustomGeometryCommandOrder, parseInkMlContent, parseModel3DScene, remapElementShapeIds, parseShapeId, isTemplateElementId, remapShapeIdReferences, reapplyAlternateContentToTree, buildOle2, SHAPE_TREE_ELEMENT_TAGS, MAX_SHAPE_ID, orderedXmlKey, safeResolveZipPath, parseDataUrlToBytes, base64Decode, EMU_PER_PX, reorderObjectKeys, encodeCompressedPng, zlibStore, hash, concatArrays, encodePasswordUtf16LE, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, uint32LE, pptxActionToElementAction, buildClrMapOverrideXml, applyActiveXControlsToSlide, BLIP_FILL_ORDER, SP_PR_ORDER, hasShapeProperties, ensureXmlChild, hasTextProperties, inkElementToStrokes, buildInkMlContent, ensureXmlChildOrCreate, isXmlNode, applyChartLayouts, stripXmlOrderSuffix, serializeTabStop, colorsEqual, generateFontGuid, applyBubbleChartOptions, applyChartUpDownBars, applyDataLabelsRangeToDLbls, applyChartAxisScaling, applyChartAxisLabelFormatting, upsertChartAxisChild, applyChartDateAxisUnits, applyChartAxisDisplayUnitsToXml, writeChartShapeProps, resolveTxPrDefRPr, buildDefRPrTextProperties, buildChartGradFillXml, applySeriesMarkerToXml, applySeriesDataPointsToXml, chartColorHex, applyChartManualLayout, buildTrendlineLabel, serializeColorChoice, replaceOleEmbedding, findKey, collectAllText, buildNodeGuidMap, buildPresentationGuidMap, regenerateSmartArtDrawingShapes, buildFabricatedDrawingXml, buildFabricatedDiagramDataXml, DIAGRAM_DRAWING_CONTENT_TYPE, DIAGRAM_DRAWING_REL_TYPE, applyDiagramRelationshipIds, buildSaveTimeCustomGeometryXml, applyCustomGeometryGuideOverrides, avLstForPreset, filterValidShapeAdjustmentEntries, applyDrawingMediaReference, XML_PROLOG, DGM_XMLNS, xmlEscape, writeBodyPrBooleanAttrs, applyTextBodySp3d, writeShapeEffects, SHAPE_STYLE_ORDER, roundCoordinate, scaleVectorToIntegers, EMU_PER_PIXEL, P14_GUIDE_URI, P15_GUIDE_URI, buildGuideListExtension, resetSpPrFormattingForStyleMatrix, fillIsPurelyStyleMatrix, serializeColorChoiceWithRef, createLineStyleGate, applyDrawingLineDash, getSignaturePathsToStrip, mergeSmartArtPointXml, mergeSmartArtConnectionXml, obfuscateFont, containsConvertibleStrictNamespaceAttribute, convertXmlToStrict, applySeriesPictureOptionsToXml, findChartExtByUri, findChildByLocalName, regenerateClonedUniqueId, buildChartUniqueIdExtLst, createOfficeGuid, isContentPoint, newSmartArtGuid, parseChartUserShapesDrawing, xmlChildren, applyChartGradientToSpPr, setAutoTitleDeleted, insertAt, replaceFirstText, shouldRebuildFromParagraphs, buildPointFromParagraphs, shouldRebuildFromRuns, buildPointFromRuns, buildPointText, ensureXmlChildren, TC_PR_BORDERS_ORDER, writeChartColorChoice, parseChartFormulaRange, expandRangeAddresses, applyCellWritesToWorksheet, stripParentDirSegments, parseChartUniqueId, buildChartMarkerXml, chartGradientsEqual, chartColorChoiceValue, preservesSpreadsheetXmlWhitespace, buildEffectDagTreeFromXml, syncPictureShapeTypeWithCropShape, buildSrgbColorChoice, fetchUrlToBytes, parseChartWideTextStyle, parseDefRPrTextStyle, parseChartDataLabelOptions, shadowOffsetToDistanceAndDirection, positiveFixedAngleAttribute, xmlAttrNumber, parseCustomShows, parseShapeProps, parseActiveXControlsFromSlide, convertMetafileToDataUrl, blobUrlToDataUrl, ooxmlGradientAngleToCssDegrees, isAlternateContentChoiceSupported, SvgExporter, detectStrictConformance, normalizeStrictXml, DEFAULT_CHART_GRADIENT_ANGLE, supportsChartGradientFill, svgToCustomGeometryPaths, normalizeStShapeType, applyCustomShows, applySections, reorderObjectKeysByLocalName, PRESENTATION_CHILD_ORDER, applyKinsokuToXml, normalizeNamespaceUri, captureStyleBaseline, STYLE_MATRIX_FILL_KEYS, STYLE_MATRIX_LINE_KEYS, STYLE_MATRIX_EFFECT_KEYS, detectOleObjectType, inferOleExtensionFromTarget, deriveSlideTitles, parseSlideDrawingGuides, parseP14DirectChild, parseP14FromExtLst, P14_TRANSITION_TYPES, decodeXmlEntities, preservesXmlWhitespace, annotateCustomGeometryCommandOrder, annotateSmartArtTextOrder, encodeXmlAttributeValue, encodeXmlTextValue, stripXmlOrderMarkers, MIN_ELEMENT_SIZE, createDrawingObjectId, DEFAULT_TEXT_FONT_SIZE, EncryptedFileError, decodePptxJsonText, deserializePptxFromJson, applyImportedPptxData, MIN_TABLE_DIMENSION, MAX_TABLE_DIMENSION, escAttr, escText, SYSTEM_COLOR_MAP, PRESET_COLOR_MAP, effectChild, mergeEffectNode, mergeAttributeEffectNode, estimateMediaDurationMs, parseVmlElements, prismFamilyFlags, prismFamilyTypeOfNode, prismFamilyTypeForFlags, P14_DIR_IS_ORIENTATION_TYPE, IncorrectPasswordError, applyThemeToData, detectFileFormat, parseOle2, decryptPptx, encryptPptx, OOXML_PERCENT_UNITS, parseDrawingLineDash, parseLineSpacingMultiplier, parseLineSpacingExactPt, parseEncryptionInfo, RC4_ALG_ID, isOle2CompoundFile, ENTRY_TYPE_ROOT, PML_XMLNS, solidFill, esc, parsePresentationDrawingGuides, parsePresentationSmartTags, resolveLayoutDisplayName, detectDigitalSignatures, unwrapOleEmbedding, mimeTypeForOleFile, oleBytesToDataUrl, emu, extractGuidFromPartName, deobfuscateFont, detectFontFormat, gradFill, parseKinsoku, parseLineStyle, parseChartUpDownBars, parseDataTable, parseChart3DSurfaces, parseChartAxes, parseBubbleChartOptions, parseChartLayouts, parseCxChartSeries, parseChartDataPointPictureBlipRel, parseSeriesTrendlines, parseSeriesErrBars, parseSeriesDataPoints, parseMarker, parseSeriesDataLabels, parseChartDataPointPicture, parseImplicitBlipPictureFill, parseEmbeddedXlsx, EMU_PER_POINT, parseDiagramRelationshipIds, parseSmartArtTextParagraphs, firstParagraphRuns, smartArtParagraphsText, parseSmartArtPresLayoutVars, readChartManualLayoutValues, parseSmartArtConnection, projectSmartArtNodeText, resolveSmartArtNodeStyleRoles, resolveSmartArtNodeCoherent3DOff, parseSmartArtDefinitionMetadata, parseSmartArtColorStyleLabels, buildSmartArtColorLists, buildSmartArtColorRoleMap, parseSmartArtQuickStyleLabels, resolveSmartArtEffectIntensity, parseSmartArtStyleLabelRefs, extractStyleReferenceColorXml, withThemePlaceholderColor, getElementOrientationMatrix, isTextOrientationMatrix, TEXT_ORIENTATION_IDENTITY, multiplyTextOrientationMatrices } from './chunk-H4TPDZV4.mjs';
1
+ import { SMART_ART_DEFINITION_PARTS, VML_SHAPE_TAGS, isAlternateContentChoiceXmlSupported, parseVmlElement, unwrapAlternateContent, xmlChild, xmlAttr, parseDrawingMediaReference, cropShapeForPresetGeometry, isHeaderFooterPlaceholder, xmlPath, inheritedPlaceholderFieldType, parseParagraphLevel, xmlHasChild, parseParagraphExtraAttributes, parseParagraphMargins, parseAlignmentAttr, parseParagraphRtl, parseTabStops, resolveParagraphAlignment, xmlText, parseBodyPrBooleanAttrs, selectAlternateContentBranch, parseBulletSizePercent, extractColorChoiceXml, formatAutoNumberMarker, parseParagraphSpacingPx, createBuiltinVariables, resolveCoordinate, parseStructuredCustomGeometry, parseAdjustmentValues, parseGuideDefinitions, evaluateGuides, evaluateGeometryPaths, inheritCustomGeometryCommandOrder, parseInkMlContent, parseModel3DScene, remapElementShapeIds, parseShapeId, isTemplateElementId, remapShapeIdReferences, reapplyAlternateContentToTree, buildOle2, SHAPE_TREE_ELEMENT_TAGS, MAX_SHAPE_ID, orderedXmlKey, safeResolveZipPath, parseDataUrlToBytes, base64Decode, EMU_PER_PX, reorderObjectKeys, encodeCompressedPng, zlibStore, hash, concatArrays, encodePasswordUtf16LE, COLOR_MAP_ALIAS_KEYS, DEFAULT_COLOR_MAP, uint32LE, pptxActionToElementAction, buildClrMapOverrideXml, applyActiveXControlsToSlide, BLIP_FILL_ORDER, SP_PR_ORDER, hasShapeProperties, ensureXmlChild, hasTextProperties, inkElementToStrokes, buildInkMlContent, ensureXmlChildOrCreate, isXmlNode, applyChartLayouts, stripXmlOrderSuffix, serializeTabStop, colorsEqual, generateFontGuid, applyBubbleChartOptions, applyChartUpDownBars, applyDataLabelsRangeToDLbls, applyChartAxisScaling, applyChartAxisLabelFormatting, upsertChartAxisChild, applyChartDateAxisUnits, applyChartAxisDisplayUnitsToXml, writeChartShapeProps, resolveTxPrDefRPr, buildDefRPrTextProperties, buildChartGradFillXml, applySeriesMarkerToXml, applySeriesDataPointsToXml, chartColorHex, applyChartManualLayout, buildTrendlineLabel, serializeColorChoice, replaceOleEmbedding, findKey, collectAllText, buildNodeGuidMap, buildPresentationGuidMap, regenerateSmartArtDrawingShapes, buildFabricatedDrawingXml, buildFabricatedDiagramDataXml, DIAGRAM_DRAWING_CONTENT_TYPE, DIAGRAM_DRAWING_REL_TYPE, applyDiagramRelationshipIds, buildSaveTimeCustomGeometryXml, applyCustomGeometryGuideOverrides, avLstForPreset, filterValidShapeAdjustmentEntries, applyDrawingMediaReference, XML_PROLOG, DGM_XMLNS, xmlEscape, writeBodyPrBooleanAttrs, applyTextBodySp3d, writeShapeEffects, SHAPE_STYLE_ORDER, roundCoordinate, scaleVectorToIntegers, EMU_PER_PIXEL, P14_GUIDE_URI, P15_GUIDE_URI, buildGuideListExtension, resetSpPrFormattingForStyleMatrix, fillIsPurelyStyleMatrix, serializeColorChoiceWithRef, createLineStyleGate, applyDrawingLineDash, getSignaturePathsToStrip, mergeSmartArtPointXml, mergeSmartArtConnectionXml, obfuscateFont, containsConvertibleStrictNamespaceAttribute, convertXmlToStrict, applySeriesPictureOptionsToXml, findChartExtByUri, findChildByLocalName, regenerateClonedUniqueId, buildChartUniqueIdExtLst, createOfficeGuid, isContentPoint, newSmartArtGuid, parseChartUserShapesDrawing, xmlChildren, applyChartGradientToSpPr, setAutoTitleDeleted, insertAt, replaceFirstText, shouldRebuildFromParagraphs, buildPointFromParagraphs, shouldRebuildFromRuns, buildPointFromRuns, buildPointText, ensureXmlChildren, TC_PR_BORDERS_ORDER, writeChartColorChoice, parseChartFormulaRange, expandRangeAddresses, applyCellWritesToWorksheet, stripParentDirSegments, parseChartUniqueId, buildChartMarkerXml, chartGradientsEqual, chartColorChoiceValue, preservesSpreadsheetXmlWhitespace, buildEffectDagTreeFromXml, syncPictureShapeTypeWithCropShape, buildSrgbColorChoice, fetchUrlToBytes, parseChartWideTextStyle, parseDefRPrTextStyle, parseChartDataLabelOptions, shadowOffsetToDistanceAndDirection, positiveFixedAngleAttribute, xmlAttrNumber, parseCustomShows, parseShapeProps, parseActiveXControlsFromSlide, convertMetafileToDataUrl, blobUrlToDataUrl, ooxmlGradientAngleToCssDegrees, isAlternateContentChoiceSupported, SvgExporter, detectStrictConformance, normalizeStrictXml, DEFAULT_CHART_GRADIENT_ANGLE, supportsChartGradientFill, svgToCustomGeometryPaths, normalizeStShapeType, applyCustomShows, applySections, reorderObjectKeysByLocalName, PRESENTATION_CHILD_ORDER, applyKinsokuToXml, normalizeNamespaceUri, captureStyleBaseline, STYLE_MATRIX_FILL_KEYS, STYLE_MATRIX_LINE_KEYS, STYLE_MATRIX_EFFECT_KEYS, detectOleObjectType, inferOleExtensionFromTarget, deriveSlideTitles, parseSlideDrawingGuides, parseP14DirectChild, parseP14FromExtLst, P14_TRANSITION_TYPES, decodeXmlEntities, preservesXmlWhitespace, annotateCustomGeometryCommandOrder, annotateSmartArtTextOrder, encodeXmlAttributeValue, encodeXmlTextValue, stripXmlOrderMarkers, MIN_ELEMENT_SIZE, createDrawingObjectId, DEFAULT_TEXT_FONT_SIZE, EncryptedFileError, decodePptxJsonText, deserializePptxFromJson, applyImportedPptxData, MIN_TABLE_DIMENSION, MAX_TABLE_DIMENSION, escAttr, escText, SYSTEM_COLOR_MAP, PRESET_COLOR_MAP, effectChild, mergeEffectNode, mergeAttributeEffectNode, estimateMediaDurationMs, parseVmlElements, prismFamilyFlags, prismFamilyTypeOfNode, prismFamilyTypeForFlags, P14_DIR_IS_ORIENTATION_TYPE, IncorrectPasswordError, applyThemeToData, detectFileFormat, parseOle2, decryptPptx, encryptPptx, OOXML_PERCENT_UNITS, parseDrawingLineDash, parseLineSpacingMultiplier, parseLineSpacingExactPt, parseEncryptionInfo, RC4_ALG_ID, isOle2CompoundFile, ENTRY_TYPE_ROOT, PML_XMLNS, solidFill, esc, parsePresentationDrawingGuides, parsePresentationSmartTags, resolveLayoutDisplayName, detectDigitalSignatures, unwrapOleEmbedding, mimeTypeForOleFile, oleBytesToDataUrl, emu, extractGuidFromPartName, deobfuscateFont, detectFontFormat, gradFill, parseKinsoku, parseLineStyle, parseChartUpDownBars, parseDataTable, parseChart3DSurfaces, parseChartAxes, parseBubbleChartOptions, parseChartLayouts, parseCxChartSeries, parseChartDataPointPictureBlipRel, parseSeriesTrendlines, parseSeriesErrBars, parseSeriesDataPoints, parseMarker, parseSeriesDataLabels, parseChartDataPointPicture, parseImplicitBlipPictureFill, parseEmbeddedXlsx, EMU_PER_POINT, parseDiagramRelationshipIds, parseSmartArtTextParagraphs, firstParagraphRuns, smartArtParagraphsText, parseSmartArtPresLayoutVars, readChartManualLayoutValues, parseSmartArtConnection, projectSmartArtNodeText, resolveSmartArtNodeStyleRoles, resolveSmartArtNodeCoherent3DOff, parseSmartArtDefinitionMetadata, parseSmartArtColorStyleLabels, buildSmartArtColorLists, buildSmartArtColorRoleMap, parseSmartArtQuickStyleLabels, resolveSmartArtEffectIntensity, parseSmartArtStyleLabelRefs, extractStyleReferenceColorXml, withThemePlaceholderColor, getElementOrientationMatrix, isTextOrientationMatrix, TEXT_ORIENTATION_IDENTITY, multiplyTextOrientationMatrices } from './chunk-Q5LESLDA.mjs';
2
2
  import { DIGITAL_SIGNATURE_ORIGIN_REL_TYPE } from './chunk-KBIJI6P5.mjs';
3
3
  import { resolveSmartArtLayoutCategory } from './chunk-3GXV5MPC.mjs';
4
4
  import { cloneXmlObject, applySmartArtLayoutDefinition, cloneSlide, parseSmartArtLayoutDefinition } from './chunk-54S5A5PZ.mjs';
@@ -38897,9 +38897,11 @@ function readSeriesTreeFields(seriesNode, containerChartType, reader) {
38897
38897
  const lineWidth = Number.isFinite(lineWidthEmu) && lineWidthEmu > 0 ? lineWidthEmu / EMU_PER_POINT : void 0;
38898
38898
  const dash = xml.getChildByLocalName(line, "prstDash")?.["@_val"];
38899
38899
  const uniqueId = parseChartUniqueId(seriesNode, reader.localName);
38900
+ const lineGradientFill = codec && isLineDrawnChartType(containerChartType) ? parseChartGradientFill(line, xml, codec) : void 0;
38900
38901
  return {
38901
38902
  color,
38902
38903
  ...codec ? seriesGradientFill(spPr, xml, codec) : {},
38904
+ ...lineGradientFill ? { lineGradientFill } : {},
38903
38905
  ...trendlines.length > 0 ? { trendlines } : {},
38904
38906
  ...errBars.length > 0 ? { errBars } : {},
38905
38907
  ...dataPoints.length > 0 ? { dataPoints } : {},
@@ -38950,6 +38952,7 @@ function seriesFromNeutral(place, reader) {
38950
38952
  ...numberFormat2 ? { numberFormat: numberFormat2 } : {},
38951
38953
  color: tree.color,
38952
38954
  ...tree.gradientFill ? { gradientFill: tree.gradientFill } : {},
38955
+ ...tree.lineGradientFill ? { lineGradientFill: tree.lineGradientFill } : {},
38953
38956
  ...tree.trendlines ? { trendlines: tree.trendlines } : {},
38954
38957
  ...tree.errBars ? { errBars: tree.errBars } : {},
38955
38958
  ...dataPoints ? { dataPoints } : {},
@@ -60389,7 +60392,27 @@ function writeDiagonalBorders(tcPr, style, emuPerPx) {
60389
60392
  }
60390
60393
  }
60391
60394
  }
60392
- function writeCellTextFormatting(xmlCell, style, ensureArray12) {
60395
+ function writeEmptyParagraphSizes(xmlCell, style, paragraphs, ensureArray12) {
60396
+ const txBody = xmlCell["a:txBody"];
60397
+ if (!txBody || typeof txBody !== "object") {
60398
+ return;
60399
+ }
60400
+ const xmlParagraphs = ensureXmlChildren(txBody, "a:p");
60401
+ const empty = xmlParagraphs.map(
60402
+ (paragraph) => ["a:r", "a:fld", "a:br"].every((tag) => ensureArray12(paragraph[tag]).length === 0)
60403
+ );
60404
+ const cellFallback = empty.every(Boolean) ? style.fontSize : void 0;
60405
+ for (const [index, paragraph] of xmlParagraphs.entries()) {
60406
+ const size = paragraphs?.[index]?.endParaFontSize ?? cellFallback;
60407
+ if (!empty[index] || size === void 0) {
60408
+ continue;
60409
+ }
60410
+ const endParaRPr = ensureXmlChildOrCreate(paragraph, "a:endParaRPr", "last");
60411
+ endParaRPr["@_sz"] = String(Math.round(size * 100));
60412
+ }
60413
+ }
60414
+ function writeCellTextFormatting(xmlCell, style, ensureArray12, cellParagraphs2) {
60415
+ writeEmptyParagraphSizes(xmlCell, style, cellParagraphs2, ensureArray12);
60393
60416
  if (style.bold === void 0 && style.italic === void 0 && style.underline === void 0 && style.fontSize === void 0 && style.color === void 0) {
60394
60417
  return;
60395
60418
  }
@@ -60695,7 +60718,7 @@ var PptxHandlerRuntime22 = class _PptxHandlerRuntime extends PptxHandlerRuntime2
60695
60718
  delete tcPr["a:tcMar"];
60696
60719
  writeDiagonalBorders(tcPr, style, _PptxHandlerRuntime.EMU_PER_PX);
60697
60720
  if (!isRichCellTxBody(xmlCell["a:txBody"], this.ensureArray.bind(this))) {
60698
- writeCellTextFormatting(xmlCell, style, this.ensureArray.bind(this));
60721
+ writeCellTextFormatting(xmlCell, style, this.ensureArray.bind(this), paragraphs);
60699
60722
  }
60700
60723
  const reordered = reorderObjectKeys(tcPr, TC_PR_BORDERS_ORDER);
60701
60724
  for (const key2 of Object.keys(tcPr)) {
@@ -21460,7 +21460,7 @@ function findTextBearingElementById(elements2, elementId) {
21460
21460
  }
21461
21461
  async function loadNestedDeck(pptxBytes) {
21462
21462
  try {
21463
- const { PptxHandler } = await import('./PptxHandler-ZPJNHEZZ.mjs');
21463
+ const { PptxHandler } = await import('./PptxHandler-BTXB54UC.mjs');
21464
21464
  const handler = new PptxHandler();
21465
21465
  const data = await handler.load(pptxBytes.buffer.slice(0));
21466
21466
  return { handler, slides: data.slides };
@@ -1,4 +1,4 @@
1
- import { hasTextProperties } from './chunk-H4TPDZV4.mjs';
1
+ import { hasTextProperties } from './chunk-Q5LESLDA.mjs';
2
2
  import { cloneSlide } from './chunk-54S5A5PZ.mjs';
3
3
 
4
4
  // pptx/core/builders/sdk/merge-operations.ts
@@ -16,7 +16,7 @@
16
16
  * `spcAft` (35% after the node's own, 15% after a folded descendant, 20% in
17
17
  * a descendant-only box), never after the last paragraph.
18
18
  */
19
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
19
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
20
20
  /** A folded descendant paragraph's size relative to the node's own text (cached corpus: 54/56 pairs). */
21
21
  export declare const DESCENDANT_FONT_SCALE = 0.78;
22
22
  /**
@@ -3,7 +3,7 @@
3
3
  * Moved from `pptx/core/utils/smartart-layout-item-font-size.ts`, which
4
4
  * re-exports it.
5
5
  */
6
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
6
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
7
7
  /**
8
8
  * Resolve the {@link FontAdvanceTable} for `fontName`, defaulting to Calibri
9
9
  * (the Office theme's default minor font, and what SmartArt renders in
@@ -18,7 +18,7 @@
18
18
  * falls back to the existing uniform-slot behaviour rather than reaching
19
19
  * unverified code.
20
20
  */
21
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
21
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
22
22
  import type { ConstraintIndex } from './smartart-constraint-solver.js';
23
23
  /**
24
24
  * True when the arranger declares `itemRole`'s own `mainAxisType` extent as
@@ -49,7 +49,7 @@
49
49
  */
50
50
  import type { DiagramLayoutNode } from '../model/index.js';
51
51
  import { resolveFontTable } from './smartart-font-table.js';
52
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
52
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
53
53
  import type { ConstraintIndex } from './smartart-constraint-solver.js';
54
54
  import type { ArrangementPlan } from './smartart-layout-interpreter-model.js';
55
55
  export { primFontSzCeilingPx, resolveItemSelfAspect } from './smartart-layout-item-font-role.js';
@@ -37,7 +37,7 @@
37
37
  *
38
38
  * @module smartart-layout-item-font-tier-fit
39
39
  */
40
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
40
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
41
41
  /** A folded item's own top-level text plus its descendant paragraphs, kept SEPARATE (see module doc comment). */
42
42
  export interface TieredFontFitItem {
43
43
  rootText: string;
@@ -13,7 +13,7 @@
13
13
  * Only fonts measured this way are listed; any other font keeps its table's
14
14
  * own `lineHeightRatio`.
15
15
  */
16
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
16
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
17
17
  /**
18
18
  * A laid-out text block is taller than its lines by a fixed 0.00695em of the
19
19
  * first line's size: COM `TextRange.BoundHeight` of Aptos at 10, 20, 37 and
@@ -12,7 +12,7 @@
12
12
  * largest size (bounded by `[floor, ceiling]`) whose wrapped line count still
13
13
  * fits `maxHeight` at that font's own measured line-height ratio.
14
14
  */
15
- import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated';
15
+ import type { FontAdvanceTable } from '../../text/font-metrics/font-advance-widths.generated.js';
16
16
  /**
17
17
  * PowerPoint's own baked-in SmartArt paragraph line spacing: every gallery
18
18
  * fixture's cached `dsp:txBody` carries `<a:lnSpc><a:spcPct val="90000"/>`
@@ -6187,7 +6187,7 @@ function buildChartGradientDef(id, fill, bounds) {
6187
6187
  function chartGradientMarkup(def) {
6188
6188
  if (def.kind === "rectPath")
6189
6189
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
6190
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
6190
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
6191
6191
  const stops = def.stops.map(
6192
6192
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
6193
6193
  ).join("");
@@ -6181,7 +6181,7 @@ function buildChartGradientDef(id, fill, bounds) {
6181
6181
  function chartGradientMarkup(def) {
6182
6182
  if (def.kind === "rectPath")
6183
6183
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
6184
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
6184
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
6185
6185
  const stops = def.stops.map(
6186
6186
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
6187
6187
  ).join("");
@@ -2037,7 +2037,7 @@ function buildChartGradientDef(id, fill, bounds) {
2037
2037
  function chartGradientMarkup(def) {
2038
2038
  if (def.kind === "rectPath")
2039
2039
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
2040
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2040
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2041
2041
  const stops = def.stops.map(
2042
2042
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
2043
2043
  ).join("");
@@ -2035,7 +2035,7 @@ function buildChartGradientDef(id, fill, bounds) {
2035
2035
  function chartGradientMarkup(def) {
2036
2036
  if (def.kind === "rectPath")
2037
2037
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
2038
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2038
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
2039
2039
  const stops = def.stops.map(
2040
2040
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
2041
2041
  ).join("");
@@ -3637,7 +3637,7 @@ function buildChartGradientDef(id, fill, bounds) {
3637
3637
  function chartGradientMarkup(def) {
3638
3638
  if (def.kind === "rectPath")
3639
3639
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
3640
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
3640
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
3641
3641
  const stops = def.stops.map(
3642
3642
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
3643
3643
  ).join("");
@@ -3615,7 +3615,7 @@ function buildChartGradientDef(id, fill, bounds) {
3615
3615
  function chartGradientMarkup(def) {
3616
3616
  if (def.kind === "rectPath")
3617
3617
  return `<pattern id="${escapeXmlAttr(def.id)}" patternUnits="objectBoundingBox" patternContentUnits="objectBoundingBox" width="1" height="1"><image href="${escapeXmlAttr(def.href)}" width="1" height="1" preserveAspectRatio="none"/></pattern>`;
3618
- const geometry = def.kind === "linearGradient" ? `x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
3618
+ const geometry = def.kind === "linearGradient" ? `${def.gradientUnits ? `gradientUnits="${def.gradientUnits}" ` : ""}x1="${def.x1}" y1="${def.y1}" x2="${def.x2}" y2="${def.y2}"` : `cx="${def.cx}" cy="${def.cy}" r="${def.r}"`;
3619
3619
  const stops = def.stops.map(
3620
3620
  (stop) => `<stop offset="${stop.offset}" stop-color="${escapeXmlAttr(stop.color)}" stop-opacity="${stop.opacity ?? 1}"/>`
3621
3621
  ).join("");
@@ -840,7 +840,7 @@ function drawingFillXml(fill) {
840
840
  const root = doc.documentElement;
841
841
  if (root.namespaceURI !== NS.a || root.localName !== "gradFill")
842
842
  throw new Error("Invalid gradient source XML");
843
- const fragment = (xml) => doc.importNode(elements(parseXml(`<w xmlns:a="${NS.a}">${xml}</w>`).documentElement)[0], true);
843
+ const fragment2 = (xml) => doc.importNode(elements(parseXml(`<w xmlns:a="${NS.a}">${xml}</w>`).documentElement)[0], true);
844
844
  let list = first(root, "gsLst", NS.a);
845
845
  if (!list) {
846
846
  list = doc.createElementNS(NS.a, "a:gsLst");
@@ -855,7 +855,7 @@ function drawingFillXml(fill) {
855
855
  node.setAttribute("pos", String(Math.round(stop.position * 1e3)));
856
856
  for (const old of elements(node))
857
857
  if (old.namespaceURI === NS.a && old.localName.endsWith("Clr")) node.removeChild(old);
858
- node.insertBefore(fragment(drawingColorXml(stop.color)), node.firstChild);
858
+ node.insertBefore(fragment2(drawingColorXml(stop.color)), node.firstChild);
859
859
  });
860
860
  for (const stop of stops.slice(fill.stops.length)) list.removeChild(stop);
861
861
  for (const node of elements(root))
@@ -905,6 +905,105 @@ function drawingFillXml(fill) {
905
905
  return buildXml(doc);
906
906
  }
907
907
 
908
+ // drawingml/theme-model.ts
909
+ var THEME_COLOR_SLOTS = [
910
+ "dk1",
911
+ "lt1",
912
+ "dk2",
913
+ "lt2",
914
+ "accent1",
915
+ "accent2",
916
+ "accent3",
917
+ "accent4",
918
+ "accent5",
919
+ "accent6",
920
+ "hlink",
921
+ "folHlink"
922
+ ];
923
+ var DEFAULT_THEME_COLOR_MAP = {
924
+ bg1: "lt1",
925
+ tx1: "dk1",
926
+ bg2: "lt2",
927
+ tx2: "dk2"
928
+ };
929
+
930
+ // drawingml/write-theme.ts
931
+ function fragment(host, xml, namespaces) {
932
+ const declarations = Object.entries({ a: NS.a, ...namespaces }).map(([prefix, uri]) => ` xmlns:${prefix}="${uri}"`).join("");
933
+ const wrapper = parseXml(`<w${declarations}>${xml}</w>`, { label: "DrawingML theme fragment" });
934
+ return elements(wrapper.documentElement).map(
935
+ (node) => host.ownerDocument.importNode(node, true)
936
+ );
937
+ }
938
+ function extensionList(parent, extensions, namespaces) {
939
+ const entries = Object.entries(extensions ?? {});
940
+ if (!entries.length) return;
941
+ const doc = parent.ownerDocument;
942
+ const list = doc.createElementNS(NS.a, "a:extLst");
943
+ for (const [uri, xml] of entries) {
944
+ const ext = doc.createElementNS(NS.a, "a:ext");
945
+ ext.setAttribute("uri", uri);
946
+ for (const node of fragment(ext, xml, namespaces)) ext.appendChild(node);
947
+ list.appendChild(ext);
948
+ }
949
+ parent.appendChild(list);
950
+ }
951
+ function fontCollection(parent, name, fonts) {
952
+ const doc = parent.ownerDocument;
953
+ const node = doc.createElementNS(NS.a, `a:${name}`);
954
+ for (const [local, face] of [
955
+ ["latin", fonts.latin],
956
+ ["ea", fonts.eastAsia],
957
+ ["cs", fonts.complexScript]
958
+ ]) {
959
+ const font = doc.createElementNS(NS.a, `a:${local}`);
960
+ font.setAttribute("typeface", face ?? "");
961
+ node.appendChild(font);
962
+ }
963
+ for (const [script, face] of Object.entries(fonts.scripts)) {
964
+ const font = doc.createElementNS(NS.a, "a:font");
965
+ font.setAttribute("script", script);
966
+ font.setAttribute("typeface", face);
967
+ node.appendChild(font);
968
+ }
969
+ parent.appendChild(node);
970
+ }
971
+ function drawingThemeXml(theme, parts) {
972
+ const namespaces = parts.namespaces ?? {};
973
+ const doc = parseXml(
974
+ `<a:theme xmlns:a="${NS.a}"${Object.entries(namespaces).map(([prefix, uri]) => ` xmlns:${prefix}="${uri}"`).join("")}/>`
975
+ );
976
+ const root = doc.documentElement;
977
+ if (theme.name !== void 0) root.setAttribute("name", theme.name);
978
+ const elementsNode = doc.createElementNS(NS.a, "a:themeElements");
979
+ root.appendChild(elementsNode);
980
+ const scheme = doc.createElementNS(NS.a, "a:clrScheme");
981
+ scheme.setAttribute("name", theme.colorScheme.name ?? theme.name ?? "Custom");
982
+ for (const slot of THEME_COLOR_SLOTS) {
983
+ const color = theme.colorScheme.colors[slot];
984
+ if (!color) throw new Error(`The theme colour scheme has no ${slot} colour.`);
985
+ const node = doc.createElementNS(NS.a, `a:${slot}`);
986
+ for (const child of fragment(node, drawingColorXml(color), namespaces)) node.appendChild(child);
987
+ scheme.appendChild(node);
988
+ }
989
+ extensionList(scheme, parts.colorSchemeExtensions, namespaces);
990
+ elementsNode.appendChild(scheme);
991
+ const fonts = doc.createElementNS(NS.a, "a:fontScheme");
992
+ fonts.setAttribute("name", theme.fontScheme.name ?? theme.name ?? "Custom");
993
+ fontCollection(fonts, "majorFont", theme.fontScheme.major);
994
+ fontCollection(fonts, "minorFont", theme.fontScheme.minor);
995
+ elementsNode.appendChild(fonts);
996
+ const format = fragment(elementsNode, parts.formatScheme, namespaces);
997
+ if (format.length !== 1 || format[0].localName !== "fmtScheme" || format[0].namespaceURI !== NS.a)
998
+ throw new Error("The theme format scheme must be one a:fmtScheme element.");
999
+ elementsNode.appendChild(format[0]);
1000
+ extensionList(elementsNode, parts.themeElementsExtensions, namespaces);
1001
+ root.appendChild(doc.createElementNS(NS.a, "a:objectDefaults"));
1002
+ root.appendChild(doc.createElementNS(NS.a, "a:extraClrSchemeLst"));
1003
+ return `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
1004
+ ${buildXml(doc)}`;
1005
+ }
1006
+
908
1007
  // drawingml/gradient-preset-data.ts
909
1008
  var OFFICE_GRADIENT_PRESET_DATA = [
910
1009
  [
@@ -1359,28 +1458,6 @@ function buildRectPathGradientImage(stops, focalPoint, fillToRect) {
1359
1458
  return `url("data:image/svg+xml,${encodeURIComponent(markup)}")`;
1360
1459
  }
1361
1460
 
1362
- // drawingml/theme-model.ts
1363
- var THEME_COLOR_SLOTS = [
1364
- "dk1",
1365
- "lt1",
1366
- "dk2",
1367
- "lt2",
1368
- "accent1",
1369
- "accent2",
1370
- "accent3",
1371
- "accent4",
1372
- "accent5",
1373
- "accent6",
1374
- "hlink",
1375
- "folHlink"
1376
- ];
1377
- var DEFAULT_THEME_COLOR_MAP = {
1378
- bg1: "lt1",
1379
- tx1: "dk1",
1380
- bg2: "lt2",
1381
- tx2: "dk2"
1382
- };
1383
-
1384
1461
  // drawingml/theme.ts
1385
1462
  var MAP_KEYS = [
1386
1463
  "bg1",
@@ -1509,6 +1586,7 @@ exports.drawingColorBrightness = drawingColorBrightness;
1509
1586
  exports.drawingColorCss = drawingColorCss;
1510
1587
  exports.drawingColorXml = drawingColorXml;
1511
1588
  exports.drawingFillXml = drawingFillXml;
1589
+ exports.drawingThemeXml = drawingThemeXml;
1512
1590
  exports.fillElementOf = fillElementOf;
1513
1591
  exports.integerAttribute = integerAttribute;
1514
1592
  exports.isThemeColorSlot = isThemeColorSlot;
@@ -10,6 +10,7 @@ export * from './drawing-geometry.js';
10
10
  export * from './drawing-shadow.js';
11
11
  export * from './write-color.js';
12
12
  export * from './write-fill.js';
13
+ export * from './write-theme.js';
13
14
  export * from './gradient-presets.js';
14
15
  export * from './gradient-geometry.js';
15
16
  export * from './rect-path-gradient.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../drawingml/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC;AACxB,OAAO,EACN,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,eAAe,GACf,MAAM,OAAO,CAAC;AACf,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../drawingml/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC;AACxB,OAAO,EACN,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,eAAe,GACf,MAAM,OAAO,CAAC;AACf,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC"}