ooxml-core 1.0.0 → 1.2.0

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 (991) hide show
  1. package/README.md +18 -18
  2. package/dist/{PptxHandler-G63S6YZU.mjs → PptxHandler-SJTINPU4.mjs} +3 -3
  3. package/dist/automation/index.cjs +8916 -5091
  4. package/dist/automation/index.mjs +8916 -5091
  5. package/dist/chart/color-palettes.d.ts +2 -2
  6. package/dist/chart/color-palettes.d.ts.map +1 -1
  7. package/dist/chart/data-cache.d.ts +6 -0
  8. package/dist/chart/data-cache.d.ts.map +1 -0
  9. package/dist/chart/gradient-coincident-stops.d.ts +17 -0
  10. package/dist/chart/gradient-coincident-stops.d.ts.map +1 -0
  11. package/dist/chart/gradient-definition.d.ts +5 -5
  12. package/dist/chart/gradient-definition.d.ts.map +1 -1
  13. package/dist/chart/index.cjs +3072 -146
  14. package/dist/chart/index.d.ts +7 -0
  15. package/dist/chart/index.d.ts.map +1 -1
  16. package/dist/chart/index.mjs +3052 -147
  17. package/dist/chart/model-chrome.d.ts +39 -0
  18. package/dist/chart/model-chrome.d.ts.map +1 -0
  19. package/dist/chart/model-series.d.ts +189 -0
  20. package/dist/chart/model-series.d.ts.map +1 -0
  21. package/dist/chart/model.d.ts +202 -0
  22. package/dist/chart/model.d.ts.map +1 -0
  23. package/dist/chart/parse-chrome.d.ts +16 -0
  24. package/dist/chart/parse-chrome.d.ts.map +1 -0
  25. package/dist/chart/parse-plot.d.ts +11 -0
  26. package/dist/chart/parse-plot.d.ts.map +1 -0
  27. package/dist/chart/parse-series.d.ts +8 -0
  28. package/dist/chart/parse-series.d.ts.map +1 -0
  29. package/dist/chart/parse-space.d.ts +8 -0
  30. package/dist/chart/parse-space.d.ts.map +1 -0
  31. package/dist/chart/parse-text.d.ts +12 -0
  32. package/dist/chart/parse-text.d.ts.map +1 -0
  33. package/dist/chart/parse-util.d.ts +42 -0
  34. package/dist/chart/parse-util.d.ts.map +1 -0
  35. package/dist/{xlsx/layout → chart/render}/chart-appearance.d.ts +5 -5
  36. package/dist/chart/render/chart-appearance.d.ts.map +1 -0
  37. package/dist/chart/render/chart-colors.d.ts +9 -0
  38. package/dist/chart/render/chart-colors.d.ts.map +1 -0
  39. package/dist/{xlsx/layout → chart/render}/chart-scale.d.ts +5 -1
  40. package/dist/chart/render/chart-scale.d.ts.map +1 -0
  41. package/dist/chart/render/chart-spacing.d.ts +6 -0
  42. package/dist/chart/render/chart-spacing.d.ts.map +1 -0
  43. package/dist/{xlsx/layout → chart/render}/chart-svg-appearance.d.ts +1 -1
  44. package/dist/chart/render/chart-svg-appearance.d.ts.map +1 -0
  45. package/dist/chart/render/chart-svg-bars.d.ts.map +1 -0
  46. package/dist/chart/render/chart-svg-cartesian.d.ts.map +1 -0
  47. package/dist/chart/render/chart-svg-legend.d.ts +13 -0
  48. package/dist/chart/render/chart-svg-legend.d.ts.map +1 -0
  49. package/dist/chart/render/chart-svg-radial.d.ts.map +1 -0
  50. package/dist/chart/render/chart-svg-text-metrics.d.ts.map +1 -0
  51. package/dist/chart/render/chart-svg-title-text.d.ts.map +1 -0
  52. package/dist/chart/render/chart-svg-util.d.ts.map +1 -0
  53. package/dist/chart/render/chart-svg.d.ts.map +1 -0
  54. package/dist/chart/render/chart-title-text.d.ts +14 -0
  55. package/dist/chart/render/chart-title-text.d.ts.map +1 -0
  56. package/dist/chart/render/chart-value-axis.d.ts +6 -0
  57. package/dist/chart/render/chart-value-axis.d.ts.map +1 -0
  58. package/dist/chart/render/chart-view.d.ts +71 -0
  59. package/dist/chart/render/chart-view.d.ts.map +1 -0
  60. package/dist/chart/render/index.d.ts +9 -0
  61. package/dist/chart/render/index.d.ts.map +1 -0
  62. package/dist/chart/render/render-space.d.ts +34 -0
  63. package/dist/chart/render/render-space.d.ts.map +1 -0
  64. package/dist/chart/render/summary-from-space.d.ts +15 -0
  65. package/dist/chart/render/summary-from-space.d.ts.map +1 -0
  66. package/dist/chart/render/summary.d.ts +51 -0
  67. package/dist/chart/render/summary.d.ts.map +1 -0
  68. package/dist/chart/render/theme-palette.d.ts +8 -0
  69. package/dist/chart/render/theme-palette.d.ts.map +1 -0
  70. package/dist/chart/style-definition.d.ts +7 -7
  71. package/dist/chart/style-definition.d.ts.map +1 -1
  72. package/dist/chart/write-axes.d.ts +5 -0
  73. package/dist/chart/write-axes.d.ts.map +1 -0
  74. package/dist/chart/write-chrome.d.ts +9 -0
  75. package/dist/chart/write-chrome.d.ts.map +1 -0
  76. package/dist/chart/write-plot.d.ts +7 -0
  77. package/dist/chart/write-plot.d.ts.map +1 -0
  78. package/dist/chart/write-series.d.ts +7 -0
  79. package/dist/chart/write-series.d.ts.map +1 -0
  80. package/dist/chart/write-shape.d.ts +21 -0
  81. package/dist/chart/write-shape.d.ts.map +1 -0
  82. package/dist/chart/write-space.d.ts +15 -0
  83. package/dist/chart/write-space.d.ts.map +1 -0
  84. package/dist/chart/write-text-body.d.ts +6 -0
  85. package/dist/chart/write-text-body.d.ts.map +1 -0
  86. package/dist/chart/write-text.d.ts +15 -0
  87. package/dist/chart/write-text.d.ts.map +1 -0
  88. package/dist/chart/write-util.d.ts +24 -0
  89. package/dist/chart/write-util.d.ts.map +1 -0
  90. package/dist/chart/xml-fragment.d.ts +13 -0
  91. package/dist/chart/xml-fragment.d.ts.map +1 -0
  92. package/dist/{chunk-HUBK4EOT.mjs → chunk-3IT6ZD7K.mjs} +2 -0
  93. package/dist/{chunk-TS3E27NK.mjs → chunk-3UMDVJRN.mjs} +12 -1
  94. package/dist/{chunk-P22OKTRK.mjs → chunk-54S5A5PZ.mjs} +208 -159
  95. package/dist/{chunk-BICQYRPW.mjs → chunk-CQQAPUAG.mjs} +27559 -27617
  96. package/dist/{chunk-RWXFQJVF.mjs → chunk-FI4RSJ24.mjs} +1 -1
  97. package/dist/{chunk-OJI3N5AY.cjs → chunk-FRUB573B.cjs} +2 -0
  98. package/dist/{chunk-ROM5MZ7O.mjs → chunk-TEOAOAIF.mjs} +42 -5
  99. package/dist/{chunk-DDG5HTGX.mjs → chunk-VYTA2OUN.mjs} +2 -2
  100. package/dist/{chunk-CKJSWE7N.mjs → chunk-XCZ7U3GZ.mjs} +3805 -2182
  101. package/dist/{chunk-2C72N64G.cjs → chunk-XROY25LN.cjs} +12 -0
  102. package/dist/collab/index.cjs +1 -0
  103. package/dist/collab/index.mjs +1 -0
  104. package/dist/collab/transport-provider.d.ts.map +1 -1
  105. package/dist/color/hex-rgb.d.ts +5 -0
  106. package/dist/color/hex-rgb.d.ts.map +1 -0
  107. package/dist/color/index.cjs +12 -0
  108. package/dist/color/index.d.ts +1 -0
  109. package/dist/color/index.d.ts.map +1 -1
  110. package/dist/color/index.mjs +11 -1
  111. package/dist/crypto/index.cjs +1406 -184
  112. package/dist/crypto/index.mjs +1406 -184
  113. package/dist/diagram/dom.d.ts +1 -14
  114. package/dist/diagram/dom.d.ts.map +1 -1
  115. package/dist/diagram/engine/alg-composite.d.ts +18 -0
  116. package/dist/diagram/engine/alg-composite.d.ts.map +1 -0
  117. package/dist/diagram/engine/alg-connector.d.ts +17 -0
  118. package/dist/diagram/engine/alg-connector.d.ts.map +1 -0
  119. package/dist/diagram/engine/alg-cycle.d.ts +28 -0
  120. package/dist/diagram/engine/alg-cycle.d.ts.map +1 -0
  121. package/dist/diagram/engine/alg-hier.d.ts +33 -0
  122. package/dist/diagram/engine/alg-hier.d.ts.map +1 -0
  123. package/dist/diagram/engine/alg-linear.d.ts +24 -0
  124. package/dist/diagram/engine/alg-linear.d.ts.map +1 -0
  125. package/dist/diagram/engine/alg-pyra.d.ts +117 -0
  126. package/dist/diagram/engine/alg-pyra.d.ts.map +1 -0
  127. package/dist/diagram/engine/alg-snake.d.ts +21 -0
  128. package/dist/diagram/engine/alg-snake.d.ts.map +1 -0
  129. package/dist/diagram/engine/axis.d.ts +24 -0
  130. package/dist/diagram/engine/axis.d.ts.map +1 -0
  131. package/dist/diagram/engine/conditions.d.ts +12 -0
  132. package/dist/diagram/engine/conditions.d.ts.map +1 -0
  133. package/dist/diagram/engine/connector-shape.d.ts +25 -0
  134. package/dist/diagram/engine/connector-shape.d.ts.map +1 -0
  135. package/dist/diagram/engine/connector-size.d.ts +30 -0
  136. package/dist/diagram/engine/connector-size.d.ts.map +1 -0
  137. package/dist/diagram/engine/constraint-eval.d.ts +37 -0
  138. package/dist/diagram/engine/constraint-eval.d.ts.map +1 -0
  139. package/dist/diagram/engine/constraint-fill-idiom.d.ts +61 -0
  140. package/dist/diagram/engine/constraint-fill-idiom.d.ts.map +1 -0
  141. package/dist/diagram/engine/constraint-units.d.ts +35 -0
  142. package/dist/diagram/engine/constraint-units.d.ts.map +1 -0
  143. package/dist/diagram/engine/data-points.d.ts +48 -0
  144. package/dist/diagram/engine/data-points.d.ts.map +1 -0
  145. package/dist/diagram/engine/engine-context.d.ts +21 -0
  146. package/dist/diagram/engine/engine-context.d.ts.map +1 -0
  147. package/dist/diagram/engine/engine-first-allowlist.d.ts +31 -0
  148. package/dist/diagram/engine/engine-first-allowlist.d.ts.map +1 -0
  149. package/dist/diagram/engine/engine-fonts.d.ts +26 -0
  150. package/dist/diagram/engine/engine-fonts.d.ts.map +1 -0
  151. package/dist/diagram/engine/engine-node.d.ts +72 -0
  152. package/dist/diagram/engine/engine-node.d.ts.map +1 -0
  153. package/dist/diagram/engine/engine-to-result.d.ts +43 -0
  154. package/dist/diagram/engine/engine-to-result.d.ts.map +1 -0
  155. package/dist/diagram/engine/engine.d.ts +18 -0
  156. package/dist/diagram/engine/engine.d.ts.map +1 -0
  157. package/dist/diagram/engine/font-groups.d.ts +33 -0
  158. package/dist/diagram/engine/font-groups.d.ts.map +1 -0
  159. package/dist/diagram/engine/font-length.d.ts +26 -0
  160. package/dist/diagram/engine/font-length.d.ts.map +1 -0
  161. package/dist/diagram/engine/font-search.d.ts +38 -0
  162. package/dist/diagram/engine/font-search.d.ts.map +1 -0
  163. package/dist/diagram/engine/hier-assistants.d.ts +47 -0
  164. package/dist/diagram/engine/hier-assistants.d.ts.map +1 -0
  165. package/dist/diagram/engine/hier-hang.d.ts +28 -0
  166. package/dist/diagram/engine/hier-hang.d.ts.map +1 -0
  167. package/dist/diagram/engine/hier-measure.d.ts +33 -0
  168. package/dist/diagram/engine/hier-measure.d.ts.map +1 -0
  169. package/dist/diagram/engine/hier-node-size.d.ts +23 -0
  170. package/dist/diagram/engine/hier-node-size.d.ts.map +1 -0
  171. package/dist/diagram/engine/hier-shape.d.ts +31 -0
  172. package/dist/diagram/engine/hier-shape.d.ts.map +1 -0
  173. package/dist/diagram/engine/index.d.ts +6 -0
  174. package/dist/diagram/engine/index.d.ts.map +1 -0
  175. package/dist/diagram/engine/layout-def-parse.d.ts +13 -0
  176. package/dist/diagram/engine/layout-def-parse.d.ts.map +1 -0
  177. package/dist/diagram/engine/layout-def-types.d.ts +118 -0
  178. package/dist/diagram/engine/layout-def-types.d.ts.map +1 -0
  179. package/dist/diagram/engine/layout-driver.d.ts +41 -0
  180. package/dist/diagram/engine/layout-driver.d.ts.map +1 -0
  181. package/dist/diagram/engine/layout-font.d.ts +27 -0
  182. package/dist/diagram/engine/layout-font.d.ts.map +1 -0
  183. package/dist/diagram/engine/move-with-merge.d.ts +49 -0
  184. package/dist/diagram/engine/move-with-merge.d.ts.map +1 -0
  185. package/dist/diagram/engine/node-text.d.ts +20 -0
  186. package/dist/diagram/engine/node-text.d.ts.map +1 -0
  187. package/dist/diagram/engine/ordered-xml.d.ts +30 -0
  188. package/dist/diagram/engine/ordered-xml.d.ts.map +1 -0
  189. package/dist/diagram/engine/preferred-size.d.ts +28 -0
  190. package/dist/diagram/engine/preferred-size.d.ts.map +1 -0
  191. package/dist/diagram/engine/pres-tree.d.ts +58 -0
  192. package/dist/diagram/engine/pres-tree.d.ts.map +1 -0
  193. package/dist/diagram/engine/registry.d.ts +7 -0
  194. package/dist/diagram/engine/registry.d.ts.map +1 -0
  195. package/dist/diagram/engine/render-filter.d.ts +43 -0
  196. package/dist/diagram/engine/render-filter.d.ts.map +1 -0
  197. package/dist/diagram/engine/shape-adjust.d.ts +16 -0
  198. package/dist/diagram/engine/shape-adjust.d.ts.map +1 -0
  199. package/dist/diagram/engine/shape-transform.d.ts +14 -0
  200. package/dist/diagram/engine/shape-transform.d.ts.map +1 -0
  201. package/dist/diagram/engine/snake-rule-fit.d.ts +34 -0
  202. package/dist/diagram/engine/snake-rule-fit.d.ts.map +1 -0
  203. package/dist/diagram/engine/style-label.d.ts +24 -0
  204. package/dist/diagram/engine/style-label.d.ts.map +1 -0
  205. package/dist/diagram/engine/text-fit.d.ts +61 -0
  206. package/dist/diagram/engine/text-fit.d.ts.map +1 -0
  207. package/dist/diagram/engine/text-grow.d.ts +33 -0
  208. package/dist/diagram/engine/text-grow.d.ts.map +1 -0
  209. package/dist/diagram/engine/text-measure.d.ts +77 -0
  210. package/dist/diagram/engine/text-measure.d.ts.map +1 -0
  211. package/dist/diagram/hierarchy/index.d.ts +5 -0
  212. package/dist/diagram/hierarchy/index.d.ts.map +1 -0
  213. package/dist/diagram/hierarchy/smartart-hierarchy-axis-pitch.d.ts +65 -0
  214. package/dist/diagram/hierarchy/smartart-hierarchy-axis-pitch.d.ts.map +1 -0
  215. package/dist/diagram/hierarchy/smartart-hierarchy-axis-swap-orientation.d.ts +68 -0
  216. package/dist/diagram/hierarchy/smartart-hierarchy-axis-swap-orientation.d.ts.map +1 -0
  217. package/dist/diagram/hierarchy/smartart-hierarchy-branch-mode.d.ts +54 -0
  218. package/dist/diagram/hierarchy/smartart-hierarchy-branch-mode.d.ts.map +1 -0
  219. package/dist/diagram/hierarchy/smartart-hierarchy-cascade.d.ts +58 -0
  220. package/dist/diagram/hierarchy/smartart-hierarchy-cascade.d.ts.map +1 -0
  221. package/dist/diagram/hierarchy/smartart-hierarchy-centered-fan-axis.d.ts +63 -0
  222. package/dist/diagram/hierarchy/smartart-hierarchy-centered-fan-axis.d.ts.map +1 -0
  223. package/dist/diagram/hierarchy/smartart-hierarchy-child-order.d.ts +41 -0
  224. package/dist/diagram/hierarchy/smartart-hierarchy-child-order.d.ts.map +1 -0
  225. package/dist/diagram/hierarchy/smartart-hierarchy-composite-child.d.ts +129 -0
  226. package/dist/diagram/hierarchy/smartart-hierarchy-composite-child.d.ts.map +1 -0
  227. package/dist/diagram/hierarchy/smartart-hierarchy-constraint-lookup.d.ts +76 -0
  228. package/dist/diagram/hierarchy/smartart-hierarchy-constraint-lookup.d.ts.map +1 -0
  229. package/dist/diagram/hierarchy/smartart-hierarchy-corner-plan.d.ts +49 -0
  230. package/dist/diagram/hierarchy/smartart-hierarchy-corner-plan.d.ts.map +1 -0
  231. package/dist/diagram/hierarchy/smartart-hierarchy-dispatch-lindir.d.ts +58 -0
  232. package/dist/diagram/hierarchy/smartart-hierarchy-dispatch-lindir.d.ts.map +1 -0
  233. package/dist/diagram/hierarchy/smartart-hierarchy-fan-aware-width.d.ts +48 -0
  234. package/dist/diagram/hierarchy/smartart-hierarchy-fan-aware-width.d.ts.map +1 -0
  235. package/dist/diagram/hierarchy/smartart-hierarchy-fan.d.ts +97 -0
  236. package/dist/diagram/hierarchy/smartart-hierarchy-fan.d.ts.map +1 -0
  237. package/dist/diagram/hierarchy/smartart-hierarchy-fanned-hang-geometry.d.ts +42 -0
  238. package/dist/diagram/hierarchy/smartart-hierarchy-fanned-hang-geometry.d.ts.map +1 -0
  239. package/dist/diagram/hierarchy/smartart-hierarchy-fanned-hang.d.ts +74 -0
  240. package/dist/diagram/hierarchy/smartart-hierarchy-fanned-hang.d.ts.map +1 -0
  241. package/dist/diagram/hierarchy/smartart-hierarchy-fit-item-box.d.ts +111 -0
  242. package/dist/diagram/hierarchy/smartart-hierarchy-fit-item-box.d.ts.map +1 -0
  243. package/dist/diagram/hierarchy/smartart-hierarchy-fold-depth.d.ts +44 -0
  244. package/dist/diagram/hierarchy/smartart-hierarchy-fold-depth.d.ts.map +1 -0
  245. package/dist/diagram/hierarchy/smartart-hierarchy-generation-gap.d.ts +60 -0
  246. package/dist/diagram/hierarchy/smartart-hierarchy-generation-gap.d.ts.map +1 -0
  247. package/dist/diagram/hierarchy/smartart-hierarchy-generation-templates.d.ts +106 -0
  248. package/dist/diagram/hierarchy/smartart-hierarchy-generation-templates.d.ts.map +1 -0
  249. package/dist/diagram/hierarchy/smartart-hierarchy-hang-depth.d.ts +133 -0
  250. package/dist/diagram/hierarchy/smartart-hierarchy-hang-depth.d.ts.map +1 -0
  251. package/dist/diagram/hierarchy/smartart-hierarchy-hang-dispatch.d.ts +28 -0
  252. package/dist/diagram/hierarchy/smartart-hierarchy-hang-dispatch.d.ts.map +1 -0
  253. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-arrange.d.ts +28 -0
  254. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-arrange.d.ts.map +1 -0
  255. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-box.d.ts +86 -0
  256. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-box.d.ts.map +1 -0
  257. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-fold.d.ts +36 -0
  258. package/dist/diagram/hierarchy/smartart-hierarchy-hanging-fold.d.ts.map +1 -0
  259. package/dist/diagram/hierarchy/smartart-hierarchy-hanging.d.ts +118 -0
  260. package/dist/diagram/hierarchy/smartart-hierarchy-hanging.d.ts.map +1 -0
  261. package/dist/diagram/hierarchy/smartart-hierarchy-item-template.d.ts +64 -0
  262. package/dist/diagram/hierarchy/smartart-hierarchy-item-template.d.ts.map +1 -0
  263. package/dist/diagram/hierarchy/smartart-hierarchy-orgchart-tree.d.ts +53 -0
  264. package/dist/diagram/hierarchy/smartart-hierarchy-orgchart-tree.d.ts.map +1 -0
  265. package/dist/diagram/hierarchy/smartart-hierarchy-orientation-resolve.d.ts +36 -0
  266. package/dist/diagram/hierarchy/smartart-hierarchy-orientation-resolve.d.ts.map +1 -0
  267. package/dist/diagram/hierarchy/smartart-hierarchy-orientation-types.d.ts +81 -0
  268. package/dist/diagram/hierarchy/smartart-hierarchy-orientation-types.d.ts.map +1 -0
  269. package/dist/diagram/hierarchy/smartart-hierarchy-orientation.d.ts +78 -0
  270. package/dist/diagram/hierarchy/smartart-hierarchy-orientation.d.ts.map +1 -0
  271. package/dist/diagram/hierarchy/smartart-hierarchy-pitch.d.ts +140 -0
  272. package/dist/diagram/hierarchy/smartart-hierarchy-pitch.d.ts.map +1 -0
  273. package/dist/diagram/hierarchy/smartart-hierarchy-shared.d.ts +131 -0
  274. package/dist/diagram/hierarchy/smartart-hierarchy-shared.d.ts.map +1 -0
  275. package/dist/diagram/hierarchy/smartart-hierarchy-standard-options.d.ts +91 -0
  276. package/dist/diagram/hierarchy/smartart-hierarchy-standard-options.d.ts.map +1 -0
  277. package/dist/diagram/hierarchy/smartart-hierarchy-standard-rows.d.ts +21 -0
  278. package/dist/diagram/hierarchy/smartart-hierarchy-standard-rows.d.ts.map +1 -0
  279. package/dist/diagram/hierarchy/smartart-hierarchy-standard.d.ts +36 -0
  280. package/dist/diagram/hierarchy/smartart-hierarchy-standard.d.ts.map +1 -0
  281. package/dist/diagram/hierarchy/smartart-hierarchy-tailed-placer.d.ts +20 -0
  282. package/dist/diagram/hierarchy/smartart-hierarchy-tailed-placer.d.ts.map +1 -0
  283. package/dist/diagram/hierarchy/smartart-hierarchy-tailed-transpose.d.ts +50 -0
  284. package/dist/diagram/hierarchy/smartart-hierarchy-tailed-transpose.d.ts.map +1 -0
  285. package/dist/diagram/hierarchy/smartart-hierarchy-transpose.d.ts +23 -0
  286. package/dist/diagram/hierarchy/smartart-hierarchy-transpose.d.ts.map +1 -0
  287. package/dist/diagram/hierarchy/smartart-hierarchy-transposed-orientation.d.ts +22 -0
  288. package/dist/diagram/hierarchy/smartart-hierarchy-transposed-orientation.d.ts.map +1 -0
  289. package/dist/diagram/hierarchy/smartart-hierarchy-wrapped-groups.d.ts +93 -0
  290. package/dist/diagram/hierarchy/smartart-hierarchy-wrapped-groups.d.ts.map +1 -0
  291. package/dist/diagram/hierarchy/smartart-layout-interpreter-hierarchy.d.ts +49 -0
  292. package/dist/diagram/hierarchy/smartart-layout-interpreter-hierarchy.d.ts.map +1 -0
  293. package/dist/diagram/index.cjs +22552 -95
  294. package/dist/diagram/index.d.ts +16 -12
  295. package/dist/diagram/index.d.ts.map +1 -1
  296. package/dist/diagram/index.mjs +22468 -96
  297. package/dist/diagram/layout/index.d.ts +38 -0
  298. package/dist/diagram/layout/index.d.ts.map +1 -0
  299. package/dist/diagram/layout/smartart-choose-xml.d.ts +32 -0
  300. package/dist/diagram/layout/smartart-choose-xml.d.ts.map +1 -0
  301. package/dist/diagram/layout/smartart-constraint-branch-index.d.ts +49 -0
  302. package/dist/diagram/layout/smartart-constraint-branch-index.d.ts.map +1 -0
  303. package/dist/diagram/layout/smartart-constraint-declared-by.d.ts +64 -0
  304. package/dist/diagram/layout/smartart-constraint-declared-by.d.ts.map +1 -0
  305. package/dist/diagram/layout/smartart-constraint-ratio-fallback.d.ts +18 -0
  306. package/dist/diagram/layout/smartart-constraint-ratio-fallback.d.ts.map +1 -0
  307. package/dist/diagram/layout/smartart-constraint-resolve.d.ts +24 -0
  308. package/dist/diagram/layout/smartart-constraint-resolve.d.ts.map +1 -0
  309. package/dist/diagram/layout/smartart-constraint-rules.d.ts +26 -0
  310. package/dist/diagram/layout/smartart-constraint-rules.d.ts.map +1 -0
  311. package/dist/diagram/layout/smartart-constraint-sibling-roles.d.ts +100 -0
  312. package/dist/diagram/layout/smartart-constraint-sibling-roles.d.ts.map +1 -0
  313. package/dist/diagram/layout/smartart-constraint-solver.d.ts +133 -0
  314. package/dist/diagram/layout/smartart-constraint-solver.d.ts.map +1 -0
  315. package/dist/diagram/layout/smartart-constraint-values.d.ts +5 -0
  316. package/dist/diagram/layout/smartart-constraint-values.d.ts.map +1 -0
  317. package/dist/diagram/layout/smartart-font-table.d.ts +14 -0
  318. package/dist/diagram/layout/smartart-font-table.d.ts.map +1 -0
  319. package/dist/diagram/layout/smartart-interpreter-fold-text.d.ts +75 -0
  320. package/dist/diagram/layout/smartart-interpreter-fold-text.d.ts.map +1 -0
  321. package/dist/diagram/layout/smartart-layout-control-flow.d.ts +25 -0
  322. package/dist/diagram/layout/smartart-layout-control-flow.d.ts.map +1 -0
  323. package/dist/diagram/layout/smartart-layout-interpreter-arranged-selection.d.ts +56 -0
  324. package/dist/diagram/layout/smartart-layout-interpreter-arranged-selection.d.ts.map +1 -0
  325. package/dist/diagram/layout/smartart-layout-interpreter-arrangement-kind.d.ts +37 -0
  326. package/dist/diagram/layout/smartart-layout-interpreter-arrangement-kind.d.ts.map +1 -0
  327. package/dist/diagram/layout/smartart-layout-interpreter-aux.d.ts +66 -0
  328. package/dist/diagram/layout/smartart-layout-interpreter-aux.d.ts.map +1 -0
  329. package/dist/diagram/layout/smartart-layout-interpreter-axis-count.d.ts +128 -0
  330. package/dist/diagram/layout/smartart-layout-interpreter-axis-count.d.ts.map +1 -0
  331. package/dist/diagram/layout/smartart-layout-interpreter-axis-depth.d.ts +73 -0
  332. package/dist/diagram/layout/smartart-layout-interpreter-axis-depth.d.ts.map +1 -0
  333. package/dist/diagram/layout/smartart-layout-interpreter-axis-hop.d.ts +48 -0
  334. package/dist/diagram/layout/smartart-layout-interpreter-axis-hop.d.ts.map +1 -0
  335. package/dist/diagram/layout/smartart-layout-interpreter-axis-range.d.ts +19 -0
  336. package/dist/diagram/layout/smartart-layout-interpreter-axis-range.d.ts.map +1 -0
  337. package/dist/diagram/layout/smartart-layout-interpreter-choose-algorithm.d.ts +60 -0
  338. package/dist/diagram/layout/smartart-layout-interpreter-choose-algorithm.d.ts.map +1 -0
  339. package/dist/diagram/layout/smartart-layout-interpreter-choose-branch.d.ts +36 -0
  340. package/dist/diagram/layout/smartart-layout-interpreter-choose-branch.d.ts.map +1 -0
  341. package/dist/diagram/layout/smartart-layout-interpreter-choose-composite.d.ts +42 -0
  342. package/dist/diagram/layout/smartart-layout-interpreter-choose-composite.d.ts.map +1 -0
  343. package/dist/diagram/layout/smartart-layout-interpreter-choose-depth.d.ts +102 -0
  344. package/dist/diagram/layout/smartart-layout-interpreter-choose-depth.d.ts.map +1 -0
  345. package/dist/diagram/layout/smartart-layout-interpreter-choose-resolve.d.ts +32 -0
  346. package/dist/diagram/layout/smartart-layout-interpreter-choose-resolve.d.ts.map +1 -0
  347. package/dist/diagram/layout/smartart-layout-interpreter-composite-alternative.d.ts +33 -0
  348. package/dist/diagram/layout/smartart-layout-interpreter-composite-alternative.d.ts.map +1 -0
  349. package/dist/diagram/layout/smartart-layout-interpreter-composite-anchor.d.ts +95 -0
  350. package/dist/diagram/layout/smartart-layout-interpreter-composite-anchor.d.ts.map +1 -0
  351. package/dist/diagram/layout/smartart-layout-interpreter-composite-aspect.d.ts +84 -0
  352. package/dist/diagram/layout/smartart-layout-interpreter-composite-aspect.d.ts.map +1 -0
  353. package/dist/diagram/layout/smartart-layout-interpreter-composite-candidates.d.ts +60 -0
  354. package/dist/diagram/layout/smartart-layout-interpreter-composite-candidates.d.ts.map +1 -0
  355. package/dist/diagram/layout/smartart-layout-interpreter-composite-children.d.ts +86 -0
  356. package/dist/diagram/layout/smartart-layout-interpreter-composite-children.d.ts.map +1 -0
  357. package/dist/diagram/layout/smartart-layout-interpreter-composite-choose-groups.d.ts +44 -0
  358. package/dist/diagram/layout/smartart-layout-interpreter-composite-choose-groups.d.ts.map +1 -0
  359. package/dist/diagram/layout/smartart-layout-interpreter-composite-choose.d.ts +109 -0
  360. package/dist/diagram/layout/smartart-layout-interpreter-composite-choose.d.ts.map +1 -0
  361. package/dist/diagram/layout/smartart-layout-interpreter-composite-detect.d.ts +182 -0
  362. package/dist/diagram/layout/smartart-layout-interpreter-composite-detect.d.ts.map +1 -0
  363. package/dist/diagram/layout/smartart-layout-interpreter-composite-fontfit.d.ts +60 -0
  364. package/dist/diagram/layout/smartart-layout-interpreter-composite-fontfit.d.ts.map +1 -0
  365. package/dist/diagram/layout/smartart-layout-interpreter-composite-foreach.d.ts +36 -0
  366. package/dist/diagram/layout/smartart-layout-interpreter-composite-foreach.d.ts.map +1 -0
  367. package/dist/diagram/layout/smartart-layout-interpreter-composite-group-slots.d.ts +92 -0
  368. package/dist/diagram/layout/smartart-layout-interpreter-composite-group-slots.d.ts.map +1 -0
  369. package/dist/diagram/layout/smartart-layout-interpreter-composite-iteration.d.ts +45 -0
  370. package/dist/diagram/layout/smartart-layout-interpreter-composite-iteration.d.ts.map +1 -0
  371. package/dist/diagram/layout/smartart-layout-interpreter-composite-nested-cycle.d.ts +57 -0
  372. package/dist/diagram/layout/smartart-layout-interpreter-composite-nested-cycle.d.ts.map +1 -0
  373. package/dist/diagram/layout/smartart-layout-interpreter-composite-order-fallback.d.ts +24 -0
  374. package/dist/diagram/layout/smartart-layout-interpreter-composite-order-fallback.d.ts.map +1 -0
  375. package/dist/diagram/layout/smartart-layout-interpreter-composite-order.d.ts +41 -0
  376. package/dist/diagram/layout/smartart-layout-interpreter-composite-order.d.ts.map +1 -0
  377. package/dist/diagram/layout/smartart-layout-interpreter-composite-pairs.d.ts +34 -0
  378. package/dist/diagram/layout/smartart-layout-interpreter-composite-pairs.d.ts.map +1 -0
  379. package/dist/diagram/layout/smartart-layout-interpreter-composite-render.d.ts +29 -0
  380. package/dist/diagram/layout/smartart-layout-interpreter-composite-render.d.ts.map +1 -0
  381. package/dist/diagram/layout/smartart-layout-interpreter-composite-ring.d.ts +40 -0
  382. package/dist/diagram/layout/smartart-layout-interpreter-composite-ring.d.ts.map +1 -0
  383. package/dist/diagram/layout/smartart-layout-interpreter-composite-slot-dim.d.ts +22 -0
  384. package/dist/diagram/layout/smartart-layout-interpreter-composite-slot-dim.d.ts.map +1 -0
  385. package/dist/diagram/layout/smartart-layout-interpreter-composite-slots.d.ts +69 -0
  386. package/dist/diagram/layout/smartart-layout-interpreter-composite-slots.d.ts.map +1 -0
  387. package/dist/diagram/layout/smartart-layout-interpreter-composite.d.ts +56 -0
  388. package/dist/diagram/layout/smartart-layout-interpreter-composite.d.ts.map +1 -0
  389. package/dist/diagram/layout/smartart-layout-interpreter-conn-path.d.ts +42 -0
  390. package/dist/diagram/layout/smartart-layout-interpreter-conn-path.d.ts.map +1 -0
  391. package/dist/diagram/layout/smartart-layout-interpreter-connector-order.d.ts +23 -0
  392. package/dist/diagram/layout/smartart-layout-interpreter-connector-order.d.ts.map +1 -0
  393. package/dist/diagram/layout/smartart-layout-interpreter-constraints.d.ts +28 -0
  394. package/dist/diagram/layout/smartart-layout-interpreter-constraints.d.ts.map +1 -0
  395. package/dist/diagram/layout/smartart-layout-interpreter-custom.d.ts +31 -0
  396. package/dist/diagram/layout/smartart-layout-interpreter-custom.d.ts.map +1 -0
  397. package/dist/diagram/layout/smartart-layout-interpreter-cycle-boxes.d.ts +36 -0
  398. package/dist/diagram/layout/smartart-layout-interpreter-cycle-boxes.d.ts.map +1 -0
  399. package/dist/diagram/layout/smartart-layout-interpreter-cycle-connectors.d.ts +21 -0
  400. package/dist/diagram/layout/smartart-layout-interpreter-cycle-connectors.d.ts.map +1 -0
  401. package/dist/diagram/layout/smartart-layout-interpreter-cycle-constraints.d.ts +116 -0
  402. package/dist/diagram/layout/smartart-layout-interpreter-cycle-constraints.d.ts.map +1 -0
  403. package/dist/diagram/layout/smartart-layout-interpreter-cycle-extension.d.ts +110 -0
  404. package/dist/diagram/layout/smartart-layout-interpreter-cycle-extension.d.ts.map +1 -0
  405. package/dist/diagram/layout/smartart-layout-interpreter-cycle-fontfit.d.ts +50 -0
  406. package/dist/diagram/layout/smartart-layout-interpreter-cycle-fontfit.d.ts.map +1 -0
  407. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-detect.d.ts +66 -0
  408. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-detect.d.ts.map +1 -0
  409. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-ratio-usersize.d.ts +81 -0
  410. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-ratio-usersize.d.ts.map +1 -0
  411. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-ratio.d.ts +109 -0
  412. package/dist/diagram/layout/smartart-layout-interpreter-cycle-hub-ratio.d.ts.map +1 -0
  413. package/dist/diagram/layout/smartart-layout-interpreter-cycle-item-aspect.d.ts +121 -0
  414. package/dist/diagram/layout/smartart-layout-interpreter-cycle-item-aspect.d.ts.map +1 -0
  415. package/dist/diagram/layout/smartart-layout-interpreter-cycle-item-node.d.ts +57 -0
  416. package/dist/diagram/layout/smartart-layout-interpreter-cycle-item-node.d.ts.map +1 -0
  417. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-bulge.d.ts +34 -0
  418. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-bulge.d.ts.map +1 -0
  419. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-item.d.ts +39 -0
  420. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-item.d.ts.map +1 -0
  421. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-nested-hub.d.ts +22 -0
  422. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-nested-hub.d.ts.map +1 -0
  423. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-offset.d.ts +43 -0
  424. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring-offset.d.ts.map +1 -0
  425. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring.d.ts +76 -0
  426. package/dist/diagram/layout/smartart-layout-interpreter-cycle-ring.d.ts.map +1 -0
  427. package/dist/diagram/layout/smartart-layout-interpreter-cycle-sibtrans.d.ts +40 -0
  428. package/dist/diagram/layout/smartart-layout-interpreter-cycle-sibtrans.d.ts.map +1 -0
  429. package/dist/diagram/layout/smartart-layout-interpreter-cycle.d.ts +69 -0
  430. package/dist/diagram/layout/smartart-layout-interpreter-cycle.d.ts.map +1 -0
  431. package/dist/diagram/layout/smartart-layout-interpreter-dispatch.d.ts +18 -0
  432. package/dist/diagram/layout/smartart-layout-interpreter-dispatch.d.ts.map +1 -0
  433. package/dist/diagram/layout/smartart-layout-interpreter-flow-direction.d.ts +29 -0
  434. package/dist/diagram/layout/smartart-layout-interpreter-flow-direction.d.ts.map +1 -0
  435. package/dist/diagram/layout/smartart-layout-interpreter-flow.d.ts +49 -0
  436. package/dist/diagram/layout/smartart-layout-interpreter-flow.d.ts.map +1 -0
  437. package/dist/diagram/layout/smartart-layout-interpreter-hierarchy-descendant.d.ts +60 -0
  438. package/dist/diagram/layout/smartart-layout-interpreter-hierarchy-descendant.d.ts.map +1 -0
  439. package/dist/diagram/layout/smartart-layout-interpreter-hierarchy-fontfit.d.ts +45 -0
  440. package/dist/diagram/layout/smartart-layout-interpreter-hierarchy-fontfit.d.ts.map +1 -0
  441. package/dist/diagram/layout/smartart-layout-interpreter-hub-detect.d.ts +26 -0
  442. package/dist/diagram/layout/smartart-layout-interpreter-hub-detect.d.ts.map +1 -0
  443. package/dist/diagram/layout/smartart-layout-interpreter-hub.d.ts +62 -0
  444. package/dist/diagram/layout/smartart-layout-interpreter-hub.d.ts.map +1 -0
  445. package/dist/diagram/layout/smartart-layout-interpreter-item-role-compound.d.ts +36 -0
  446. package/dist/diagram/layout/smartart-layout-interpreter-item-role-compound.d.ts.map +1 -0
  447. package/dist/diagram/layout/smartart-layout-interpreter-item-role-orientation.d.ts +80 -0
  448. package/dist/diagram/layout/smartart-layout-interpreter-item-role-orientation.d.ts.map +1 -0
  449. package/dist/diagram/layout/smartart-layout-interpreter-item-role-shared.d.ts +102 -0
  450. package/dist/diagram/layout/smartart-layout-interpreter-item-role-shared.d.ts.map +1 -0
  451. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-columns.d.ts +23 -0
  452. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-columns.d.ts.map +1 -0
  453. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-fields.d.ts +77 -0
  454. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-fields.d.ts.map +1 -0
  455. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-rect.d.ts +20 -0
  456. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack-rect.d.ts.map +1 -0
  457. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack.d.ts +53 -0
  458. package/dist/diagram/layout/smartart-layout-interpreter-item-role-stack.d.ts.map +1 -0
  459. package/dist/diagram/layout/smartart-layout-interpreter-item-role-transition.d.ts +50 -0
  460. package/dist/diagram/layout/smartart-layout-interpreter-item-role-transition.d.ts.map +1 -0
  461. package/dist/diagram/layout/smartart-layout-interpreter-item-roles-recursive.d.ts +87 -0
  462. package/dist/diagram/layout/smartart-layout-interpreter-item-roles-recursive.d.ts.map +1 -0
  463. package/dist/diagram/layout/smartart-layout-interpreter-item-roles-unwrap.d.ts +57 -0
  464. package/dist/diagram/layout/smartart-layout-interpreter-item-roles-unwrap.d.ts.map +1 -0
  465. package/dist/diagram/layout/smartart-layout-interpreter-item-roles.d.ts +109 -0
  466. package/dist/diagram/layout/smartart-layout-interpreter-item-roles.d.ts.map +1 -0
  467. package/dist/diagram/layout/smartart-layout-interpreter-linear-content-size.d.ts +42 -0
  468. package/dist/diagram/layout/smartart-layout-interpreter-linear-content-size.d.ts.map +1 -0
  469. package/dist/diagram/layout/smartart-layout-interpreter-linear-item-aspect.d.ts +94 -0
  470. package/dist/diagram/layout/smartart-layout-interpreter-linear-item-aspect.d.ts.map +1 -0
  471. package/dist/diagram/layout/smartart-layout-interpreter-linear-main-axis.d.ts +17 -0
  472. package/dist/diagram/layout/smartart-layout-interpreter-linear-main-axis.d.ts.map +1 -0
  473. package/dist/diagram/layout/smartart-layout-interpreter-linear-shared.d.ts +21 -0
  474. package/dist/diagram/layout/smartart-layout-interpreter-linear-shared.d.ts.map +1 -0
  475. package/dist/diagram/layout/smartart-layout-interpreter-linear-table.d.ts +76 -0
  476. package/dist/diagram/layout/smartart-layout-interpreter-linear-table.d.ts.map +1 -0
  477. package/dist/diagram/layout/smartart-layout-interpreter-linear.d.ts +20 -0
  478. package/dist/diagram/layout/smartart-layout-interpreter-linear.d.ts.map +1 -0
  479. package/dist/diagram/layout/smartart-layout-interpreter-model.d.ts +77 -0
  480. package/dist/diagram/layout/smartart-layout-interpreter-model.d.ts.map +1 -0
  481. package/dist/diagram/layout/smartart-layout-interpreter-named-rules.d.ts +93 -0
  482. package/dist/diagram/layout/smartart-layout-interpreter-named-rules.d.ts.map +1 -0
  483. package/dist/diagram/layout/smartart-layout-interpreter-position-family.d.ts +58 -0
  484. package/dist/diagram/layout/smartart-layout-interpreter-position-family.d.ts.map +1 -0
  485. package/dist/diagram/layout/smartart-layout-interpreter-preset-node.d.ts +61 -0
  486. package/dist/diagram/layout/smartart-layout-interpreter-preset-node.d.ts.map +1 -0
  487. package/dist/diagram/layout/smartart-layout-interpreter-presof-choose.d.ts +29 -0
  488. package/dist/diagram/layout/smartart-layout-interpreter-presof-choose.d.ts.map +1 -0
  489. package/dist/diagram/layout/smartart-layout-interpreter-pyramid-bands.d.ts +41 -0
  490. package/dist/diagram/layout/smartart-layout-interpreter-pyramid-bands.d.ts.map +1 -0
  491. package/dist/diagram/layout/smartart-layout-interpreter-pyramid.d.ts +100 -0
  492. package/dist/diagram/layout/smartart-layout-interpreter-pyramid.d.ts.map +1 -0
  493. package/dist/diagram/layout/smartart-layout-interpreter-render.d.ts +86 -0
  494. package/dist/diagram/layout/smartart-layout-interpreter-render.d.ts.map +1 -0
  495. package/dist/diagram/layout/smartart-layout-interpreter-snake.d.ts +18 -0
  496. package/dist/diagram/layout/smartart-layout-interpreter-snake.d.ts.map +1 -0
  497. package/dist/diagram/layout/smartart-layout-interpreter-tree-location.d.ts +28 -0
  498. package/dist/diagram/layout/smartart-layout-interpreter-tree-location.d.ts.map +1 -0
  499. package/dist/diagram/layout/smartart-layout-interpreter-when-numeric.d.ts +15 -0
  500. package/dist/diagram/layout/smartart-layout-interpreter-when-numeric.d.ts.map +1 -0
  501. package/dist/diagram/layout/smartart-layout-interpreter-when-var.d.ts +12 -0
  502. package/dist/diagram/layout/smartart-layout-interpreter-when-var.d.ts.map +1 -0
  503. package/dist/diagram/layout/smartart-layout-interpreter-when.d.ts +69 -0
  504. package/dist/diagram/layout/smartart-layout-interpreter-when.d.ts.map +1 -0
  505. package/dist/diagram/layout/smartart-layout-interpreter.d.ts +80 -0
  506. package/dist/diagram/layout/smartart-layout-interpreter.d.ts.map +1 -0
  507. package/dist/diagram/layout/smartart-layout-item-font-role.d.ts +80 -0
  508. package/dist/diagram/layout/smartart-layout-item-font-role.d.ts.map +1 -0
  509. package/dist/diagram/layout/smartart-layout-item-font-size.d.ts +129 -0
  510. package/dist/diagram/layout/smartart-layout-item-font-size.d.ts.map +1 -0
  511. package/dist/diagram/layout/smartart-layout-item-font-tier-fit.d.ts +70 -0
  512. package/dist/diagram/layout/smartart-layout-item-font-tier-fit.d.ts.map +1 -0
  513. package/dist/diagram/layout/smartart-layout-item-font-tier.d.ts +139 -0
  514. package/dist/diagram/layout/smartart-layout-item-font-tier.d.ts.map +1 -0
  515. package/dist/diagram/layout/smartart-layout-item-tx-anchor.d.ts +105 -0
  516. package/dist/diagram/layout/smartart-layout-item-tx-anchor.d.ts.map +1 -0
  517. package/dist/diagram/layout/smartart-layout-shape-polygon.d.ts +17 -0
  518. package/dist/diagram/layout/smartart-layout-shape-polygon.d.ts.map +1 -0
  519. package/dist/diagram/layout/smartart-layout-shape-preset.d.ts +127 -0
  520. package/dist/diagram/layout/smartart-layout-shape-preset.d.ts.map +1 -0
  521. package/dist/diagram/layout/smartart-layout-snake-grid.d.ts +43 -0
  522. package/dist/diagram/layout/smartart-layout-snake-grid.d.ts.map +1 -0
  523. package/dist/diagram/layout/smartart-layout-style-helpers.d.ts +84 -0
  524. package/dist/diagram/layout/smartart-layout-style-helpers.d.ts.map +1 -0
  525. package/dist/diagram/layout/smartart-layout-types.d.ts +253 -0
  526. package/dist/diagram/layout/smartart-layout-types.d.ts.map +1 -0
  527. package/dist/diagram/layout/smartart-line-pitch.d.ts +29 -0
  528. package/dist/diagram/layout/smartart-line-pitch.d.ts.map +1 -0
  529. package/dist/diagram/layout/smartart-node-role-colors.d.ts +30 -0
  530. package/dist/diagram/layout/smartart-node-role-colors.d.ts.map +1 -0
  531. package/dist/diagram/layout/smartart-node-tree-axis.d.ts +91 -0
  532. package/dist/diagram/layout/smartart-node-tree-axis.d.ts.map +1 -0
  533. package/dist/diagram/layout/smartart-text-wrap-fit.d.ts +84 -0
  534. package/dist/diagram/layout/smartart-text-wrap-fit.d.ts.map +1 -0
  535. package/dist/diagram/layout/smartart-tree.d.ts +33 -0
  536. package/dist/diagram/layout/smartart-tree.d.ts.map +1 -0
  537. package/dist/diagram/model/constraint-rules.d.ts +31 -0
  538. package/dist/diagram/model/constraint-rules.d.ts.map +1 -0
  539. package/dist/diagram/model/data.d.ts +109 -0
  540. package/dist/diagram/model/data.d.ts.map +1 -0
  541. package/dist/diagram/model/index.d.ts +7 -0
  542. package/dist/diagram/model/index.d.ts.map +1 -0
  543. package/dist/diagram/model/layout-definition.d.ts +276 -0
  544. package/dist/diagram/model/layout-definition.d.ts.map +1 -0
  545. package/dist/diagram/model/layout-primitives.d.ts +82 -0
  546. package/dist/diagram/model/layout-primitives.d.ts.map +1 -0
  547. package/dist/diagram/model/node.d.ts +194 -0
  548. package/dist/diagram/model/node.d.ts.map +1 -0
  549. package/dist/diagram/model/style-definition.d.ts +131 -0
  550. package/dist/diagram/model/style-definition.d.ts.map +1 -0
  551. package/dist/diagram/types.d.ts +12 -148
  552. package/dist/diagram/types.d.ts.map +1 -1
  553. package/dist/digest/algorithm-names.d.ts +2 -2
  554. package/dist/digest/algorithm-names.d.ts.map +1 -1
  555. package/dist/digest/bit-ops.d.ts +30 -0
  556. package/dist/digest/bit-ops.d.ts.map +1 -0
  557. package/dist/digest/digest.d.ts +2 -2
  558. package/dist/digest/digest.d.ts.map +1 -1
  559. package/dist/digest/index.cjs +1319 -90
  560. package/dist/digest/index.d.ts +7 -1
  561. package/dist/digest/index.d.ts.map +1 -1
  562. package/dist/digest/index.mjs +1313 -91
  563. package/dist/digest/md2.d.ts +22 -0
  564. package/dist/digest/md2.d.ts.map +1 -0
  565. package/dist/digest/md4.d.ts +3 -0
  566. package/dist/digest/md4.d.ts.map +1 -0
  567. package/dist/digest/md5.d.ts +3 -0
  568. package/dist/digest/md5.d.ts.map +1 -0
  569. package/dist/digest/password-hash.d.ts +7 -0
  570. package/dist/digest/password-hash.d.ts.map +1 -1
  571. package/dist/digest/ripemd-functions.d.ts +18 -0
  572. package/dist/digest/ripemd-functions.d.ts.map +1 -0
  573. package/dist/digest/ripemd128.d.ts +3 -0
  574. package/dist/digest/ripemd128.d.ts.map +1 -0
  575. package/dist/digest/ripemd160.d.ts +3 -0
  576. package/dist/digest/ripemd160.d.ts.map +1 -0
  577. package/dist/digest/whirlpool-sbox.d.ts +15 -0
  578. package/dist/digest/whirlpool-sbox.d.ts.map +1 -0
  579. package/dist/digest/whirlpool-table.d.ts +12 -0
  580. package/dist/digest/whirlpool-table.d.ts.map +1 -0
  581. package/dist/digest/whirlpool.d.ts +3 -0
  582. package/dist/digest/whirlpool.d.ts.map +1 -0
  583. package/dist/docx/block-parser.d.ts.map +1 -1
  584. package/dist/docx/chart-paint.d.ts +14 -0
  585. package/dist/docx/chart-paint.d.ts.map +1 -0
  586. package/dist/docx/chart.d.ts +43 -0
  587. package/dist/docx/chart.d.ts.map +1 -0
  588. package/dist/docx/diagram-theme.d.ts +3 -3
  589. package/dist/docx/diagram-theme.d.ts.map +1 -1
  590. package/dist/docx/drawing.d.ts.map +1 -1
  591. package/dist/docx/embedded.cjs +1938 -677
  592. package/dist/docx/embedded.mjs +1938 -677
  593. package/dist/docx/field-flags.d.ts +8 -0
  594. package/dist/docx/field-flags.d.ts.map +1 -0
  595. package/dist/docx/field-lock.d.ts +6 -0
  596. package/dist/docx/field-lock.d.ts.map +1 -0
  597. package/dist/docx/field-runs.d.ts +4 -1
  598. package/dist/docx/field-runs.d.ts.map +1 -1
  599. package/dist/docx/index.cjs +6347 -2809
  600. package/dist/docx/index.d.ts +4 -0
  601. package/dist/docx/index.d.ts.map +1 -1
  602. package/dist/docx/index.mjs +6340 -2809
  603. package/dist/docx/inline-model.d.ts +3 -0
  604. package/dist/docx/inline-model.d.ts.map +1 -1
  605. package/dist/docx/layout/adapter.d.ts.map +1 -1
  606. package/dist/docx/layout/index.cjs +2726 -128
  607. package/dist/docx/layout/index.mjs +2727 -129
  608. package/dist/docx/layout/input.d.ts +5 -0
  609. package/dist/docx/layout/input.d.ts.map +1 -1
  610. package/dist/docx/layout/page-fields.d.ts.map +1 -1
  611. package/dist/docx/load/index.cjs +3488 -1005
  612. package/dist/docx/load/index.mjs +3488 -1005
  613. package/dist/docx/model-run.d.ts +5 -0
  614. package/dist/docx/model-run.d.ts.map +1 -1
  615. package/dist/docx/numbering-model.d.ts +1 -1
  616. package/dist/docx/numbering-model.d.ts.map +1 -1
  617. package/dist/docx/numbering-package.d.ts +4 -4
  618. package/dist/docx/numbering-package.d.ts.map +1 -1
  619. package/dist/docx/numbering-start-edit.d.ts +8 -0
  620. package/dist/docx/numbering-start-edit.d.ts.map +1 -0
  621. package/dist/docx/numbering-start-patch.d.ts +13 -0
  622. package/dist/docx/numbering-start-patch.d.ts.map +1 -0
  623. package/dist/docx/parse.d.ts.map +1 -1
  624. package/dist/docx/theme-color.d.ts.map +1 -1
  625. package/dist/docx/theme-model.d.ts +3 -2
  626. package/dist/docx/theme-model.d.ts.map +1 -1
  627. package/dist/docx/theme.d.ts +5 -1
  628. package/dist/docx/theme.d.ts.map +1 -1
  629. package/dist/docx/ui/chart-spec.d.ts +10 -0
  630. package/dist/docx/ui/chart-spec.d.ts.map +1 -0
  631. package/dist/docx/ui/field-guard.d.ts +2 -0
  632. package/dist/docx/ui/field-guard.d.ts.map +1 -1
  633. package/dist/docx/ui/field-results.d.ts.map +1 -1
  634. package/dist/docx/ui/index.cjs +3862 -1276
  635. package/dist/docx/ui/index.d.ts +1 -0
  636. package/dist/docx/ui/index.d.ts.map +1 -1
  637. package/dist/docx/ui/index.mjs +3860 -1278
  638. package/dist/docx/ui/inline-content-schema.d.ts.map +1 -1
  639. package/dist/docx/ui/review-commands.d.ts.map +1 -1
  640. package/dist/docx/ui/run-adapter.d.ts.map +1 -1
  641. package/dist/docx/ui/run-extra-mark.d.ts +1 -1
  642. package/dist/docx/ui/run-extra-mark.d.ts.map +1 -1
  643. package/dist/docx/ui/simple-field-input.d.ts +3 -0
  644. package/dist/docx/ui/simple-field-input.d.ts.map +1 -1
  645. package/dist/docx/ui/track-changes-mode.d.ts.map +1 -1
  646. package/dist/docx/ui/track-paragraph-boundaries.d.ts +5 -0
  647. package/dist/docx/ui/track-paragraph-boundaries.d.ts.map +1 -0
  648. package/dist/docx/write-inline.d.ts.map +1 -1
  649. package/dist/docx/write-run.d.ts.map +1 -1
  650. package/dist/drawingml/dom.d.ts +15 -0
  651. package/dist/drawingml/dom.d.ts.map +1 -0
  652. package/dist/drawingml/drawing-color-brightness.d.ts +6 -0
  653. package/dist/drawingml/drawing-color-brightness.d.ts.map +1 -0
  654. package/dist/drawingml/drawing-color-css.d.ts.map +1 -0
  655. package/dist/{diagram → drawingml}/drawing-color.d.ts +5 -5
  656. package/dist/drawingml/drawing-color.d.ts.map +1 -0
  657. package/dist/{diagram → drawingml}/drawing-fill.d.ts +3 -3
  658. package/dist/drawingml/drawing-fill.d.ts.map +1 -0
  659. package/dist/{diagram → drawingml}/drawing-geometry.d.ts +4 -4
  660. package/dist/drawingml/drawing-geometry.d.ts.map +1 -0
  661. package/dist/drawingml/drawing-shadow.d.ts.map +1 -0
  662. package/dist/{diagram → drawingml}/drawing-text.d.ts +2 -2
  663. package/dist/drawingml/drawing-text.d.ts.map +1 -0
  664. package/dist/{diagram → drawingml}/gradient-geometry.d.ts +2 -2
  665. package/dist/drawingml/gradient-geometry.d.ts.map +1 -0
  666. package/dist/drawingml/gradient-preset-data.d.ts.map +1 -0
  667. package/dist/{diagram → drawingml}/gradient-presets.d.ts +3 -3
  668. package/dist/drawingml/gradient-presets.d.ts.map +1 -0
  669. package/dist/drawingml/index.cjs +1545 -0
  670. package/dist/drawingml/index.d.ts +19 -0
  671. package/dist/drawingml/index.d.ts.map +1 -0
  672. package/dist/drawingml/index.mjs +1497 -0
  673. package/dist/{diagram → drawingml}/ordered-color-transforms.d.ts +2 -2
  674. package/dist/drawingml/ordered-color-transforms.d.ts.map +1 -0
  675. package/dist/drawingml/rect-path-gradient.d.ts.map +1 -0
  676. package/dist/drawingml/theme-color.d.ts +19 -0
  677. package/dist/drawingml/theme-color.d.ts.map +1 -0
  678. package/dist/drawingml/theme-model.d.ts +40 -0
  679. package/dist/drawingml/theme-model.d.ts.map +1 -0
  680. package/dist/drawingml/theme.d.ts +21 -0
  681. package/dist/drawingml/theme.d.ts.map +1 -0
  682. package/dist/drawingml/types.d.ts +152 -0
  683. package/dist/drawingml/types.d.ts.map +1 -0
  684. package/dist/drawingml/write-color.d.ts +4 -0
  685. package/dist/drawingml/write-color.d.ts.map +1 -0
  686. package/dist/{diagram → drawingml}/write-fill.d.ts +2 -2
  687. package/dist/drawingml/write-fill.d.ts.map +1 -0
  688. package/dist/drawingml/write-line.d.ts +7 -0
  689. package/dist/drawingml/write-line.d.ts.map +1 -0
  690. package/dist/geometry/connector-elbow-geometry.d.ts +14 -0
  691. package/dist/geometry/connector-elbow-geometry.d.ts.map +1 -1
  692. package/dist/geometry/index.cjs +43 -0
  693. package/dist/geometry/index.mjs +42 -1
  694. package/dist/geometry/ooxml-arc.d.ts +31 -0
  695. package/dist/geometry/ooxml-arc.d.ts.map +1 -0
  696. package/dist/geometry/preset-shape-evaluator.d.ts +73 -0
  697. package/dist/geometry/preset-shape-evaluator.d.ts.map +1 -0
  698. package/dist/i18n/dictionary.d.ts +13 -0
  699. package/dist/i18n/dictionary.d.ts.map +1 -0
  700. package/dist/i18n/index.cjs +68 -0
  701. package/dist/i18n/index.d.ts +4 -0
  702. package/dist/i18n/index.d.ts.map +1 -0
  703. package/dist/i18n/index.mjs +60 -0
  704. package/dist/i18n/locale.d.ts +17 -0
  705. package/dist/i18n/locale.d.ts.map +1 -0
  706. package/dist/i18n/translator.d.ts +18 -0
  707. package/dist/i18n/translator.d.ts.map +1 -0
  708. package/dist/index.cjs +34476 -16474
  709. package/dist/index.d.ts +2 -0
  710. package/dist/index.d.ts.map +1 -1
  711. package/dist/index.mjs +34486 -16490
  712. package/dist/opc/embedded-packages.d.ts +11 -0
  713. package/dist/opc/embedded-packages.d.ts.map +1 -0
  714. package/dist/opc/index.cjs +365 -70
  715. package/dist/opc/index.d.ts +1 -0
  716. package/dist/opc/index.d.ts.map +1 -1
  717. package/dist/opc/index.mjs +353 -71
  718. package/dist/opc/properties/app.d.ts +9 -3
  719. package/dist/opc/properties/app.d.ts.map +1 -1
  720. package/dist/opc/properties/core.d.ts +5 -1
  721. package/dist/opc/properties/core.d.ts.map +1 -1
  722. package/dist/opc/properties/custom.d.ts +19 -0
  723. package/dist/opc/properties/custom.d.ts.map +1 -1
  724. package/dist/opc/properties/index.d.ts +6 -3
  725. package/dist/opc/properties/index.d.ts.map +1 -1
  726. package/dist/opc/properties/patch.d.ts +38 -0
  727. package/dist/opc/properties/patch.d.ts.map +1 -0
  728. package/dist/opc/properties/title-groups.d.ts +30 -0
  729. package/dist/opc/properties/title-groups.d.ts.map +1 -0
  730. package/dist/opc/properties/types.d.ts +15 -0
  731. package/dist/opc/properties/types.d.ts.map +1 -1
  732. package/dist/pptx/automation/index.cjs +11799 -8643
  733. package/dist/pptx/automation/index.d.ts +4 -4
  734. package/dist/pptx/automation/index.mjs +6 -6
  735. package/dist/pptx/chunks/{index-lk7dyOPS.d.ts → index-EZJZ7USt.d.ts} +916 -975
  736. package/dist/pptx/chunks/index-EZJZ7USt.d.ts.map +1 -0
  737. package/dist/pptx/chunks/{index-C4mfzVoY.d.ts → index-JNv7AJx5.d.ts} +163 -210
  738. package/dist/pptx/chunks/index-JNv7AJx5.d.ts.map +1 -0
  739. package/dist/pptx/chunks/{smart-art-CO2jmJFf.d.ts → smart-art-Q2kZQtHh.d.ts} +436 -374
  740. package/dist/pptx/chunks/smart-art-Q2kZQtHh.d.ts.map +1 -0
  741. package/dist/pptx/chunks/{text-operations-CDLx4hD5.d.ts → text-operations-DtCxXrMh.d.ts} +56 -5
  742. package/dist/pptx/chunks/text-operations-DtCxXrMh.d.ts.map +1 -0
  743. package/dist/pptx/cli/index.cjs +11299 -8143
  744. package/dist/pptx/cli/index.d.ts +1 -1
  745. package/dist/pptx/cli/index.mjs +5 -5
  746. package/dist/pptx/converter/index.cjs +7124 -7136
  747. package/dist/pptx/converter/index.d.ts +1 -1
  748. package/dist/pptx/converter/index.mjs +3 -3
  749. package/dist/pptx/editor/render/table-cell-edit.cjs +7 -3
  750. package/dist/pptx/editor/render/table-cell-edit.d.ts +16 -1
  751. package/dist/pptx/editor/render/table-cell-edit.d.ts.map +1 -1
  752. package/dist/pptx/editor/render/table-cell-edit.mjs +1 -1
  753. package/dist/pptx/editor/render/table-cell-merge.cjs +3 -3
  754. package/dist/pptx/editor/render/table-cell-merge.mjs +1 -1
  755. package/dist/pptx/editor/render/table-data-grid-ops.cjs +7 -7
  756. package/dist/pptx/editor/render/table-data-grid-ops.mjs +2 -2
  757. package/dist/pptx/editor/render/table-layout.cjs +6 -6
  758. package/dist/pptx/editor/render/table-layout.d.ts.map +1 -1
  759. package/dist/pptx/editor/render/table-layout.mjs +1 -1
  760. package/dist/pptx/editor/render/table-merge.cjs +5 -5
  761. package/dist/pptx/editor/render/table-merge.mjs +1 -1
  762. package/dist/pptx/index.cjs +10844 -8788
  763. package/dist/pptx/index.d.ts +5 -5
  764. package/dist/pptx/index.mjs +6 -6
  765. package/dist/pptx/smartart-layouts/index.cjs +135 -106
  766. package/dist/pptx/smartart-layouts/index.d.ts +1 -1
  767. package/dist/pptx/smartart-layouts/index.mjs +1 -1
  768. package/dist/teams/content.d.ts.map +1 -1
  769. package/dist/teams/index.cjs +3906 -2057
  770. package/dist/teams/index.d.ts +1 -0
  771. package/dist/teams/index.d.ts.map +1 -1
  772. package/dist/teams/index.mjs +3905 -2057
  773. package/dist/teams/server-file-storage.d.ts +11 -0
  774. package/dist/teams/server-file-storage.d.ts.map +1 -0
  775. package/dist/teams/store.d.ts +2 -0
  776. package/dist/teams/store.d.ts.map +1 -1
  777. package/dist/teams/stored-file.d.ts.map +1 -1
  778. package/dist/{xlsx/layout/font-family.d.ts → text/css-font-family.d.ts} +1 -1
  779. package/dist/text/css-font-family.d.ts.map +1 -0
  780. package/dist/text/font-metrics/font-advance-widths-aptos-display.generated.d.ts +10 -0
  781. package/dist/text/font-metrics/font-advance-widths-aptos-display.generated.d.ts.map +1 -0
  782. package/dist/text/font-metrics/font-advance-widths-aptos.generated.d.ts +10 -0
  783. package/dist/text/font-metrics/font-advance-widths-aptos.generated.d.ts.map +1 -0
  784. package/dist/text/font-metrics/font-advance-widths-arial.generated.d.ts +10 -0
  785. package/dist/text/font-metrics/font-advance-widths-arial.generated.d.ts.map +1 -0
  786. package/dist/text/font-metrics/font-advance-widths-calibri-light.generated.d.ts +10 -0
  787. package/dist/text/font-metrics/font-advance-widths-calibri-light.generated.d.ts.map +1 -0
  788. package/dist/text/font-metrics/font-advance-widths-calibri.generated.d.ts +10 -0
  789. package/dist/text/font-metrics/font-advance-widths-calibri.generated.d.ts.map +1 -0
  790. package/dist/text/font-metrics/font-advance-widths-segoe-ui.generated.d.ts +10 -0
  791. package/dist/text/font-metrics/font-advance-widths-segoe-ui.generated.d.ts.map +1 -0
  792. package/dist/text/font-metrics/font-advance-widths-times-new-roman.generated.d.ts +10 -0
  793. package/dist/text/font-metrics/font-advance-widths-times-new-roman.generated.d.ts.map +1 -0
  794. package/dist/text/font-metrics/font-advance-widths.generated.d.ts +48 -0
  795. package/dist/text/font-metrics/font-advance-widths.generated.d.ts.map +1 -0
  796. package/dist/text/font-metrics/font-kerning.d.ts +19 -0
  797. package/dist/text/font-metrics/font-kerning.d.ts.map +1 -0
  798. package/dist/visio/index.cjs +645 -119
  799. package/dist/visio/index.mjs +645 -119
  800. package/dist/visio/theme-color.d.ts +13 -3
  801. package/dist/visio/theme-color.d.ts.map +1 -1
  802. package/dist/visio/theme-resolve.d.ts +2 -1
  803. package/dist/visio/theme-resolve.d.ts.map +1 -1
  804. package/dist/visio/theme.d.ts +5 -2
  805. package/dist/visio/theme.d.ts.map +1 -1
  806. package/dist/visio/ui/index.cjs +14 -3
  807. package/dist/visio/ui/index.mjs +14 -3
  808. package/dist/visio/ui/shape-rotation.d.ts +1 -1
  809. package/dist/visio/ui/shape-rotation.d.ts.map +1 -1
  810. package/dist/xlsx/collab/adapter.d.ts +18 -0
  811. package/dist/xlsx/collab/adapter.d.ts.map +1 -0
  812. package/dist/xlsx/collab/apply.d.ts +8 -0
  813. package/dist/xlsx/collab/apply.d.ts.map +1 -0
  814. package/dist/xlsx/collab/bind.d.ts +34 -0
  815. package/dist/xlsx/collab/bind.d.ts.map +1 -0
  816. package/dist/xlsx/collab/codec.d.ts +35 -0
  817. package/dist/xlsx/collab/codec.d.ts.map +1 -0
  818. package/dist/xlsx/collab/dirty.d.ts +23 -0
  819. package/dist/xlsx/collab/dirty.d.ts.map +1 -0
  820. package/dist/xlsx/collab/index.cjs +1245 -0
  821. package/dist/xlsx/collab/index.d.ts +10 -0
  822. package/dist/xlsx/collab/index.d.ts.map +1 -0
  823. package/dist/xlsx/collab/index.mjs +1207 -0
  824. package/dist/xlsx/collab/lines.d.ts +22 -0
  825. package/dist/xlsx/collab/lines.d.ts.map +1 -0
  826. package/dist/xlsx/collab/names.d.ts +16 -0
  827. package/dist/xlsx/collab/names.d.ts.map +1 -0
  828. package/dist/xlsx/collab/presence.d.ts +31 -0
  829. package/dist/xlsx/collab/presence.d.ts.map +1 -0
  830. package/dist/xlsx/collab/schema.d.ts +30 -0
  831. package/dist/xlsx/collab/schema.d.ts.map +1 -0
  832. package/dist/xlsx/collab/sheets.d.ts +34 -0
  833. package/dist/xlsx/collab/sheets.d.ts.map +1 -0
  834. package/dist/xlsx/collab/styles.d.ts +26 -0
  835. package/dist/xlsx/collab/styles.d.ts.map +1 -0
  836. package/dist/xlsx/collab/write.d.ts +14 -0
  837. package/dist/xlsx/collab/write.d.ts.map +1 -0
  838. package/dist/xlsx/edit/chart-colors.d.ts +2 -2
  839. package/dist/xlsx/edit/chart-colors.d.ts.map +1 -1
  840. package/dist/xlsx/edit/chart-element-fill.d.ts +3 -3
  841. package/dist/xlsx/edit/chart-element-fill.d.ts.map +1 -1
  842. package/dist/xlsx/edit/chart-series-fill.d.ts +2 -2
  843. package/dist/xlsx/edit/chart-series-fill.d.ts.map +1 -1
  844. package/dist/xlsx/edit/chart-series-gradient.d.ts +4 -4
  845. package/dist/xlsx/edit/chart-series-gradient.d.ts.map +1 -1
  846. package/dist/xlsx/edit/chart-series-target.d.ts +15 -0
  847. package/dist/xlsx/edit/chart-series-target.d.ts.map +1 -0
  848. package/dist/xlsx/edit/chart-series-transparency.d.ts +2 -2
  849. package/dist/xlsx/edit/chart-series-transparency.d.ts.map +1 -1
  850. package/dist/xlsx/edit/external.d.ts +28 -0
  851. package/dist/xlsx/edit/external.d.ts.map +1 -0
  852. package/dist/xlsx/edit/index.d.ts +1 -0
  853. package/dist/xlsx/edit/index.d.ts.map +1 -1
  854. package/dist/xlsx/edit/protection.d.ts +1 -1
  855. package/dist/xlsx/edit/session-calc.d.ts +7 -0
  856. package/dist/xlsx/edit/session-calc.d.ts.map +1 -1
  857. package/dist/xlsx/edit/session.d.ts.map +1 -1
  858. package/dist/xlsx/edit/types.d.ts +14 -1
  859. package/dist/xlsx/edit/types.d.ts.map +1 -1
  860. package/dist/xlsx/formula/engine.d.ts.map +1 -1
  861. package/dist/xlsx/formula/lexemes.d.ts +6 -0
  862. package/dist/xlsx/formula/lexemes.d.ts.map +1 -1
  863. package/dist/xlsx/formula/tokenizer.d.ts.map +1 -1
  864. package/dist/xlsx/index.cjs +7816 -4280
  865. package/dist/xlsx/index.mjs +7806 -4281
  866. package/dist/xlsx/layout/cell-view.d.ts.map +1 -1
  867. package/dist/xlsx/layout/chart-view.d.ts +3 -52
  868. package/dist/xlsx/layout/chart-view.d.ts.map +1 -1
  869. package/dist/xlsx/layout/colors.d.ts +1 -4
  870. package/dist/xlsx/layout/colors.d.ts.map +1 -1
  871. package/dist/xlsx/layout/index.d.ts +7 -4
  872. package/dist/xlsx/layout/index.d.ts.map +1 -1
  873. package/dist/xlsx/layout/remote-selections.d.ts +40 -0
  874. package/dist/xlsx/layout/remote-selections.d.ts.map +1 -0
  875. package/dist/xlsx/layout/sparkline-data.d.ts +19 -0
  876. package/dist/xlsx/layout/sparkline-data.d.ts.map +1 -0
  877. package/dist/xlsx/layout/sparkline-view.d.ts +52 -0
  878. package/dist/xlsx/layout/sparkline-view.d.ts.map +1 -0
  879. package/dist/xlsx/layout/tint.d.ts +3 -12
  880. package/dist/xlsx/layout/tint.d.ts.map +1 -1
  881. package/dist/xlsx/layout/types.d.ts +3 -0
  882. package/dist/xlsx/layout/types.d.ts.map +1 -1
  883. package/dist/xlsx/load/index.cjs +5127 -2105
  884. package/dist/xlsx/load/index.mjs +5127 -2105
  885. package/dist/xlsx/model-sparklines.d.ts +52 -0
  886. package/dist/xlsx/model-sparklines.d.ts.map +1 -0
  887. package/dist/xlsx/model.d.ts +10 -47
  888. package/dist/xlsx/model.d.ts.map +1 -1
  889. package/dist/xlsx/read/chart.d.ts +1 -4
  890. package/dist/xlsx/read/chart.d.ts.map +1 -1
  891. package/dist/xlsx/read/index.d.ts +1 -0
  892. package/dist/xlsx/read/index.d.ts.map +1 -1
  893. package/dist/xlsx/read/sheet-data-source.d.ts +10 -0
  894. package/dist/xlsx/read/sheet-data-source.d.ts.map +1 -0
  895. package/dist/xlsx/read/sparklines.d.ts +12 -0
  896. package/dist/xlsx/read/sparklines.d.ts.map +1 -0
  897. package/dist/xlsx/read/theme.d.ts +2 -4
  898. package/dist/xlsx/read/theme.d.ts.map +1 -1
  899. package/dist/xlsx/read/worksheet.d.ts.map +1 -1
  900. package/dist/xlsx/ui/commands/i18n/navigation.d.ts.map +1 -1
  901. package/dist/xlsx/ui/context.d.ts +15 -1
  902. package/dist/xlsx/ui/context.d.ts.map +1 -1
  903. package/dist/xlsx/ui/grid/cell-items.d.ts.map +1 -1
  904. package/dist/xlsx/ui/grid/cell-paint.d.ts +1 -1
  905. package/dist/xlsx/ui/grid/cell-paint.d.ts.map +1 -1
  906. package/dist/xlsx/ui/grid/view-cache.d.ts.map +1 -1
  907. package/dist/xlsx/ui/index.cjs +3116 -1302
  908. package/dist/xlsx/ui/index.mjs +3116 -1303
  909. package/dist/xlsx/ui/locales/de/collab.d.ts +2 -0
  910. package/dist/xlsx/ui/locales/de/collab.d.ts.map +1 -0
  911. package/dist/xlsx/ui/locales/de/index.d.ts.map +1 -1
  912. package/dist/xlsx/ui/locales/en/collab.d.ts +2 -0
  913. package/dist/xlsx/ui/locales/en/collab.d.ts.map +1 -0
  914. package/dist/xlsx/ui/locales/en/index.d.ts.map +1 -1
  915. package/dist/xlsx/ui/locales/es/collab.d.ts +2 -0
  916. package/dist/xlsx/ui/locales/es/collab.d.ts.map +1 -0
  917. package/dist/xlsx/ui/locales/es/index.d.ts.map +1 -1
  918. package/dist/xlsx/ui/locales/fr/collab.d.ts +2 -0
  919. package/dist/xlsx/ui/locales/fr/collab.d.ts.map +1 -0
  920. package/dist/xlsx/ui/locales/fr/index.d.ts.map +1 -1
  921. package/dist/xlsx/ui/locales/merge.d.ts +2 -1
  922. package/dist/xlsx/ui/locales/merge.d.ts.map +1 -1
  923. package/dist/xlsx/ui/locales/zh-CN/collab.d.ts +2 -0
  924. package/dist/xlsx/ui/locales/zh-CN/collab.d.ts.map +1 -0
  925. package/dist/xlsx/ui/locales/zh-CN/index.d.ts.map +1 -1
  926. package/dist/xlsx/ui/localization.d.ts.map +1 -1
  927. package/dist/xlsx/ui/ribbon/icon-paths.d.ts.map +1 -1
  928. package/dist/xlsx/write/chart-colors.d.ts +3 -0
  929. package/dist/xlsx/write/chart-colors.d.ts.map +1 -1
  930. package/dist/xlsx/write/chart-space.d.ts +5 -0
  931. package/dist/xlsx/write/chart-space.d.ts.map +1 -0
  932. package/dist/xlsx/write/chart-title.d.ts +4 -1
  933. package/dist/xlsx/write/chart-title.d.ts.map +1 -1
  934. package/dist/xlsx/write/chart.d.ts +4 -1
  935. package/dist/xlsx/write/chart.d.ts.map +1 -1
  936. package/dist/xlsx/write/theme.d.ts.map +1 -1
  937. package/dist/xml/index.cjs +162 -0
  938. package/dist/xml/index.d.ts +1 -0
  939. package/dist/xml/index.d.ts.map +1 -1
  940. package/dist/xml/index.mjs +161 -1
  941. package/dist/xml/lite.d.ts +30 -0
  942. package/dist/xml/lite.d.ts.map +1 -0
  943. package/package.json +16 -1
  944. package/dist/diagram/drawing-color-brightness.d.ts +0 -6
  945. package/dist/diagram/drawing-color-brightness.d.ts.map +0 -1
  946. package/dist/diagram/drawing-color-css.d.ts.map +0 -1
  947. package/dist/diagram/drawing-color.d.ts.map +0 -1
  948. package/dist/diagram/drawing-fill.d.ts.map +0 -1
  949. package/dist/diagram/drawing-geometry.d.ts.map +0 -1
  950. package/dist/diagram/drawing-shadow.d.ts.map +0 -1
  951. package/dist/diagram/drawing-text.d.ts.map +0 -1
  952. package/dist/diagram/gradient-geometry.d.ts.map +0 -1
  953. package/dist/diagram/gradient-preset-data.d.ts.map +0 -1
  954. package/dist/diagram/gradient-presets.d.ts.map +0 -1
  955. package/dist/diagram/ordered-color-transforms.d.ts.map +0 -1
  956. package/dist/diagram/rect-path-gradient.d.ts.map +0 -1
  957. package/dist/diagram/write-color.d.ts +0 -4
  958. package/dist/diagram/write-color.d.ts.map +0 -1
  959. package/dist/diagram/write-fill.d.ts.map +0 -1
  960. package/dist/pptx/chunks/index-C4mfzVoY.d.ts.map +0 -1
  961. package/dist/pptx/chunks/index-lk7dyOPS.d.ts.map +0 -1
  962. package/dist/pptx/chunks/smart-art-CO2jmJFf.d.ts.map +0 -1
  963. package/dist/pptx/chunks/text-operations-CDLx4hD5.d.ts.map +0 -1
  964. package/dist/xlsx/layout/chart-appearance.d.ts.map +0 -1
  965. package/dist/xlsx/layout/chart-colors.d.ts +0 -9
  966. package/dist/xlsx/layout/chart-colors.d.ts.map +0 -1
  967. package/dist/xlsx/layout/chart-scale.d.ts.map +0 -1
  968. package/dist/xlsx/layout/chart-spacing.d.ts +0 -6
  969. package/dist/xlsx/layout/chart-spacing.d.ts.map +0 -1
  970. package/dist/xlsx/layout/chart-svg-appearance.d.ts.map +0 -1
  971. package/dist/xlsx/layout/chart-svg-bars.d.ts.map +0 -1
  972. package/dist/xlsx/layout/chart-svg-cartesian.d.ts.map +0 -1
  973. package/dist/xlsx/layout/chart-svg-radial.d.ts.map +0 -1
  974. package/dist/xlsx/layout/chart-svg-text-metrics.d.ts.map +0 -1
  975. package/dist/xlsx/layout/chart-svg-title-text.d.ts.map +0 -1
  976. package/dist/xlsx/layout/chart-svg-util.d.ts.map +0 -1
  977. package/dist/xlsx/layout/chart-svg.d.ts.map +0 -1
  978. package/dist/xlsx/layout/chart-title-text.d.ts +0 -14
  979. package/dist/xlsx/layout/chart-title-text.d.ts.map +0 -1
  980. package/dist/xlsx/layout/font-family.d.ts.map +0 -1
  981. /package/dist/{xlsx/layout → chart/render}/chart-svg-bars.d.ts +0 -0
  982. /package/dist/{xlsx/layout → chart/render}/chart-svg-cartesian.d.ts +0 -0
  983. /package/dist/{xlsx/layout → chart/render}/chart-svg-radial.d.ts +0 -0
  984. /package/dist/{xlsx/layout → chart/render}/chart-svg-text-metrics.d.ts +0 -0
  985. /package/dist/{xlsx/layout → chart/render}/chart-svg-title-text.d.ts +0 -0
  986. /package/dist/{xlsx/layout → chart/render}/chart-svg-util.d.ts +0 -0
  987. /package/dist/{xlsx/layout → chart/render}/chart-svg.d.ts +0 -0
  988. /package/dist/{diagram → drawingml}/drawing-color-css.d.ts +0 -0
  989. /package/dist/{diagram → drawingml}/drawing-shadow.d.ts +0 -0
  990. /package/dist/{diagram → drawingml}/gradient-preset-data.d.ts +0 -0
  991. /package/dist/{diagram → drawingml}/rect-path-gradient.d.ts +0 -0
@@ -0,0 +1,1545 @@
1
+ 'use strict';
2
+
3
+ var xmldom = require('@xmldom/xmldom');
4
+
5
+ // xml/namespaces.ts
6
+ var NS = {
7
+ /** DrawingML main. */
8
+ a: "http://schemas.openxmlformats.org/drawingml/2006/main",
9
+ /** Relationships (`r:id`, `r:embed`). */
10
+ r: "http://schemas.openxmlformats.org/officeDocument/2006/relationships"};
11
+ function parseXml(xml, options = {}) {
12
+ const label = options.label ?? "OOXML";
13
+ if (/<!DOCTYPE|<!ENTITY/i.test(xml))
14
+ throw new Error(`${label} XML with DTD or entity declarations is not supported`);
15
+ let parseError = "";
16
+ let parsed;
17
+ try {
18
+ parsed = new xmldom.DOMParser({
19
+ onError: (level, message) => {
20
+ if (level !== "warning") parseError = message;
21
+ }
22
+ }).parseFromString(xml, "application/xml");
23
+ } catch (error) {
24
+ throw new Error(
25
+ `Invalid ${label} XML: ${error instanceof Error ? error.message : String(error)}`,
26
+ { cause: error }
27
+ );
28
+ }
29
+ if (parseError || !parsed.documentElement)
30
+ throw new Error(`Invalid ${label} XML: ${parseError || "missing root element"}`);
31
+ return parsed;
32
+ }
33
+ var buildXml = (node) => new xmldom.XMLSerializer().serializeToString(node);
34
+ var isElement = (node) => node.nodeType === 1;
35
+ var elements = (parent) => Array.from(parent.childNodes).filter(isElement);
36
+ function named(element, local, ns, lenient = true) {
37
+ if (!element || element.localName !== local) return false;
38
+ return element.namespaceURI === ns || lenient && !element.namespaceURI;
39
+ }
40
+ var children = (parent, local, ns, lenient = true) => elements(parent).filter((element) => named(element, local, ns, lenient));
41
+ var first = (parent, local, ns, lenient = true) => parent ? children(parent, local, ns, lenient)[0] : void 0;
42
+
43
+ // drawingml/dom.ts
44
+ function attributeReader(element) {
45
+ return (name) => {
46
+ if (!element) return void 0;
47
+ const direct = element.getAttribute(name);
48
+ if (direct !== null) return direct;
49
+ const attributes = element.attributes;
50
+ for (let index = 0; index < attributes.length; index++) {
51
+ const candidate = attributes.item(index);
52
+ if (candidate && candidate.localName === name) return candidate.value;
53
+ }
54
+ return void 0;
55
+ };
56
+ }
57
+ function stringAttribute(element, name) {
58
+ const value = attributeReader(element)(name)?.trim();
59
+ return value ? value : void 0;
60
+ }
61
+ function integerAttribute(element, name) {
62
+ const parsed = Number.parseInt(attributeReader(element)(name) ?? "", 10);
63
+ return Number.isFinite(parsed) ? parsed : void 0;
64
+ }
65
+ function booleanAttribute(element, name) {
66
+ const value = attributeReader(element)(name)?.trim().toLowerCase();
67
+ if (value === "1" || value === "true") return true;
68
+ if (value === "0" || value === "false") return false;
69
+ return void 0;
70
+ }
71
+ function descendants(root, local) {
72
+ const result = [];
73
+ const visit = (node) => {
74
+ for (const child of Array.from(node.childNodes)) {
75
+ if (!isElement(child)) continue;
76
+ if (child.localName === local) result.push(child);
77
+ visit(child);
78
+ }
79
+ };
80
+ visit(root);
81
+ return result;
82
+ }
83
+
84
+ // color/color-primitives.ts
85
+ function clampUnitInterval(value) {
86
+ return Math.min(1, Math.max(0, value));
87
+ }
88
+ function hexToRgbChannels(color) {
89
+ const normalized = color.replace("#", "");
90
+ if (!/^[0-9a-fA-F]{6}$/.test(normalized)) {
91
+ return null;
92
+ }
93
+ return {
94
+ r: Number.parseInt(normalized.slice(0, 2), 16),
95
+ g: Number.parseInt(normalized.slice(2, 4), 16),
96
+ b: Number.parseInt(normalized.slice(4, 6), 16)
97
+ };
98
+ }
99
+ function percentDivisorFor(text) {
100
+ return text.endsWith("%") ? 100 : 1e5;
101
+ }
102
+ function parseOoxmlPercent(value) {
103
+ const text = String(value ?? "").trim();
104
+ const divisor = percentDivisorFor(text);
105
+ const magnitude = Number.parseFloat(divisor === 100 ? text.slice(0, -1) : text);
106
+ if (!Number.isFinite(magnitude)) {
107
+ return void 0;
108
+ }
109
+ return magnitude / divisor;
110
+ }
111
+ function parseDrawingPercent(value) {
112
+ const parsed = parseOoxmlPercent(value);
113
+ return parsed === void 0 ? void 0 : clampUnitInterval(parsed);
114
+ }
115
+ function scrgbLinearToSrgb8(linear) {
116
+ const l = Math.min(1, Math.max(0, linear));
117
+ const companded = l <= 31308e-7 ? 12.92 * l : 1.055 * l ** (1 / 2.4) - 0.055;
118
+ return Math.min(255, Math.max(0, Math.round(companded * 255)));
119
+ }
120
+ function toHex(value) {
121
+ return Math.min(255, Math.max(0, Math.round(value))).toString(16).padStart(2, "0").toUpperCase();
122
+ }
123
+ function rgbToHsl(r, g, b) {
124
+ const rN = r / 255;
125
+ const gN = g / 255;
126
+ const bN = b / 255;
127
+ const cMax = Math.max(rN, gN, bN);
128
+ const cMin = Math.min(rN, gN, bN);
129
+ const delta = cMax - cMin;
130
+ const l = (cMax + cMin) / 2;
131
+ let s = 0;
132
+ if (delta !== 0) {
133
+ s = delta / (1 - Math.abs(2 * l - 1));
134
+ }
135
+ let h = 0;
136
+ if (delta !== 0) {
137
+ if (cMax === rN) {
138
+ h = 60 * ((gN - bN) / delta % 6);
139
+ } else if (cMax === gN) {
140
+ h = 60 * ((bN - rN) / delta + 2);
141
+ } else {
142
+ h = 60 * ((rN - gN) / delta + 4);
143
+ }
144
+ }
145
+ if (h < 0) {
146
+ h += 360;
147
+ }
148
+ return { h, s: clampUnitInterval(s), l: clampUnitInterval(l) };
149
+ }
150
+ function hslToRgb(h, s, l, roundChannel = Math.round, options) {
151
+ const sC = options?.clampSaturation === false ? s : clampUnitInterval(s);
152
+ const lC = clampUnitInterval(l);
153
+ const hN = (h % 360 + 360) % 360;
154
+ const c = (1 - Math.abs(2 * lC - 1)) * sC;
155
+ const x = c * (1 - Math.abs(hN / 60 % 2 - 1));
156
+ const m = lC - c / 2;
157
+ let rP = 0;
158
+ let gP = 0;
159
+ let bP = 0;
160
+ if (hN < 60) {
161
+ rP = c;
162
+ gP = x;
163
+ bP = 0;
164
+ } else if (hN < 120) {
165
+ rP = x;
166
+ gP = c;
167
+ bP = 0;
168
+ } else if (hN < 180) {
169
+ rP = 0;
170
+ gP = c;
171
+ bP = x;
172
+ } else if (hN < 240) {
173
+ rP = 0;
174
+ gP = x;
175
+ bP = c;
176
+ } else if (hN < 300) {
177
+ rP = x;
178
+ gP = 0;
179
+ bP = c;
180
+ } else {
181
+ rP = c;
182
+ gP = 0;
183
+ bP = x;
184
+ }
185
+ return {
186
+ r: roundChannel((rP + m) * 255),
187
+ g: roundChannel((gP + m) * 255),
188
+ b: roundChannel((bP + m) * 255)
189
+ };
190
+ }
191
+ function parseDrawingFraction(value) {
192
+ return parseOoxmlPercent(value);
193
+ }
194
+ function parseDrawingHueDegrees(value) {
195
+ const parsed = Number.parseFloat(String(value ?? "").trim());
196
+ if (!Number.isFinite(parsed)) {
197
+ return void 0;
198
+ }
199
+ return parsed / 6e4;
200
+ }
201
+
202
+ // color/color-linear.ts
203
+ function srgb255ToLinear(channel) {
204
+ const c = clampUnitInterval(channel / 255);
205
+ return c <= 0.04045 ? c / 12.92 : ((c + 0.055) / 1.055) ** 2.4;
206
+ }
207
+ function linearToSrgb255(linear) {
208
+ const c = clampUnitInterval(linear);
209
+ return 255 * (c <= 31308e-7 ? c * 12.92 : 1.055 * c ** (1 / 2.4) - 0.055);
210
+ }
211
+
212
+ // drawingml/ordered-color-transforms.ts
213
+ function orderedColorTransforms(channels, transforms) {
214
+ let { r, g, b } = channels;
215
+ let alpha = 1;
216
+ const wrap = (value) => (value % 360 + 360) % 360;
217
+ for (const transform of transforms) {
218
+ const { name, value } = transform;
219
+ const fraction = parseDrawingFraction(value);
220
+ if (name === "alpha" && fraction !== void 0) alpha = clampUnitInterval(fraction);
221
+ else if (name === "alphaMod" && fraction !== void 0)
222
+ alpha = clampUnitInterval(alpha * fraction);
223
+ else if (name === "alphaOff" && fraction !== void 0)
224
+ alpha = clampUnitInterval(alpha + fraction);
225
+ else if (name === "inv") [r, g, b] = [255 - r, 255 - g, 255 - b];
226
+ else if (name === "gray") r = g = b = 0.299 * r + 0.587 * g + 0.114 * b;
227
+ else if ((name === "shade" || name === "tint") && fraction !== void 0) {
228
+ const mix = (channel) => linearToSrgb255(
229
+ name === "shade" ? srgb255ToLinear(channel) * fraction : 1 - (1 - srgb255ToLinear(channel)) * fraction
230
+ );
231
+ [r, g, b] = [mix(r), mix(g), mix(b)];
232
+ } else {
233
+ const hsl = rgbToHsl(r, g, b);
234
+ if (name === "comp") hsl.h = wrap(hsl.h + 180);
235
+ else if (name === "hue") {
236
+ const hue = parseDrawingHueDegrees(value);
237
+ if (hue !== void 0) hsl.h = wrap(hue);
238
+ } else if (name === "hueOff") {
239
+ const hue = parseDrawingHueDegrees(value);
240
+ if (hue !== void 0) hsl.h = wrap(hsl.h + hue);
241
+ } else if (name === "hueMod" && fraction !== void 0) hsl.h = wrap(hsl.h * fraction);
242
+ else if (name === "sat" && fraction !== void 0) hsl.s = clampUnitInterval(fraction);
243
+ else if (name === "satMod" && fraction !== void 0) hsl.s *= fraction;
244
+ else if (name === "satOff" && fraction !== void 0)
245
+ hsl.s = clampUnitInterval(hsl.s + fraction);
246
+ else if (name === "lum" && fraction !== void 0) hsl.l = clampUnitInterval(fraction);
247
+ else if (name === "lumMod" && fraction !== void 0)
248
+ hsl.l = clampUnitInterval(hsl.l * fraction);
249
+ else if (name === "lumOff" && fraction !== void 0)
250
+ hsl.l = clampUnitInterval(hsl.l + fraction);
251
+ else continue;
252
+ ({ r, g, b } = hslToRgb(hsl.h, hsl.s, hsl.l, (channel) => channel, {
253
+ clampSaturation: false
254
+ }));
255
+ }
256
+ }
257
+ return { r, g, b, alpha };
258
+ }
259
+
260
+ // drawingml/drawing-color.ts
261
+ var COLOR_ELEMENTS = {
262
+ srgbClr: "srgb",
263
+ schemeClr: "scheme",
264
+ sysClr: "system",
265
+ prstClr: "preset",
266
+ scrgbClr: "scrgb",
267
+ hslClr: "hsl"
268
+ };
269
+ function colorValue(kind, element) {
270
+ const attribute = (name) => element.getAttribute(name) ?? "";
271
+ if (kind === "scrgb") return `${attribute("r")},${attribute("g")},${attribute("b")}`;
272
+ if (kind === "hsl") return `${attribute("hue")},${attribute("sat")},${attribute("lum")}`;
273
+ return attribute("val");
274
+ }
275
+ function parseDrawingColorIn(container) {
276
+ if (!container) return void 0;
277
+ for (const element of elements(container)) {
278
+ const kind = COLOR_ELEMENTS[element.localName];
279
+ if (!kind || element.namespaceURI && element.namespaceURI !== NS.a) continue;
280
+ return parseDrawingColor(element);
281
+ }
282
+ return void 0;
283
+ }
284
+ function parseDrawingColor(element) {
285
+ const kind = COLOR_ELEMENTS[element.localName];
286
+ if (!kind) return void 0;
287
+ const color = {
288
+ kind,
289
+ value: colorValue(kind, element),
290
+ transforms: elements(element).map((child) => ({
291
+ name: child.localName,
292
+ value: child.getAttribute("val") ?? ""
293
+ }))
294
+ };
295
+ const fallback = kind === "system" ? element.getAttribute("lastClr") : null;
296
+ if (fallback) color.fallback = fallback;
297
+ return color;
298
+ }
299
+ function parseDrawingColorList(container) {
300
+ if (!container) return [];
301
+ return elements(container).flatMap((element) => {
302
+ const color = parseDrawingColor(element);
303
+ return color ? [color] : [];
304
+ });
305
+ }
306
+ var PRESET_COLORS = {
307
+ black: "#000000",
308
+ white: "#FFFFFF",
309
+ red: "#FF0000",
310
+ green: "#008000",
311
+ blue: "#0000FF",
312
+ yellow: "#FFFF00",
313
+ gray: "#808080",
314
+ grey: "#808080"
315
+ };
316
+ function baseHex(color, theme) {
317
+ switch (color.kind) {
318
+ case "srgb":
319
+ return /^[0-9a-f]{6}$/i.test(color.value) ? `#${color.value.toUpperCase()}` : void 0;
320
+ case "scheme":
321
+ return theme?.scheme(color.value);
322
+ case "system":
323
+ return color.fallback && /^[0-9a-f]{6}$/i.test(color.fallback) ? `#${color.fallback.toUpperCase()}` : void 0;
324
+ case "preset":
325
+ return PRESET_COLORS[color.value];
326
+ case "scrgb": {
327
+ const [r, g, b] = color.value.split(",").map((part) => parseDrawingFraction(part));
328
+ if (r === void 0 || g === void 0 || b === void 0) return void 0;
329
+ return `#${toHex(scrgbLinearToSrgb8(r))}${toHex(scrgbLinearToSrgb8(g))}${toHex(scrgbLinearToSrgb8(b))}`;
330
+ }
331
+ case "hsl": {
332
+ const [h, s, l] = color.value.split(",");
333
+ const hue = parseDrawingHueDegrees(h);
334
+ const sat = parseDrawingFraction(s);
335
+ const lum = parseDrawingFraction(l);
336
+ if (hue === void 0 || sat === void 0 || lum === void 0) return void 0;
337
+ const { r, g, b } = hslToRgb(hue, sat, lum);
338
+ return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
339
+ }
340
+ }
341
+ }
342
+ var APPLIED = /* @__PURE__ */ new Set([
343
+ "alpha",
344
+ "alphaMod",
345
+ "alphaOff",
346
+ "comp",
347
+ "inv",
348
+ "gray",
349
+ "shade",
350
+ "tint",
351
+ "hue",
352
+ "hueMod",
353
+ "hueOff",
354
+ "sat",
355
+ "satMod",
356
+ "satOff",
357
+ "lum",
358
+ "lumMod",
359
+ "lumOff"
360
+ ]);
361
+ function resolveDrawingColor(color, theme, options) {
362
+ const base = baseHex(color, theme);
363
+ const rgb = base ? hexToRgbChannels(base) : null;
364
+ if (!rgb) return void 0;
365
+ if (options?.transformOrder === "document") {
366
+ const value = orderedColorTransforms(rgb, color.transforms);
367
+ const round = options.hslRounding === "halfDown" ? (channel) => Math.ceil(channel - 0.5) : Math.round;
368
+ return {
369
+ hex: `#${toHex(round(value.r))}${toHex(round(value.g))}${toHex(round(value.b))}`,
370
+ alpha: value.alpha,
371
+ unapplied: [...new Set(color.transforms.map((transform) => transform.name))].filter(
372
+ (name) => !APPLIED.has(name)
373
+ )
374
+ };
375
+ }
376
+ let { r, g, b } = rgb;
377
+ const find = (name) => color.transforms.find((entry) => entry.name === name)?.value;
378
+ const has = (name) => color.transforms.some((entry) => entry.name === name);
379
+ if (has("comp")) {
380
+ const hsl = rgbToHsl(r, g, b);
381
+ ({ r, g, b } = hslToRgb((hsl.h + 180) % 360, hsl.s, hsl.l));
382
+ }
383
+ if (has("inv")) [r, g, b] = [255 - r, 255 - g, 255 - b];
384
+ if (has("gray")) r = g = b = Math.round(0.299 * r + 0.587 * g + 0.114 * b);
385
+ const shade = parseDrawingPercent(find("shade"));
386
+ if (shade !== void 0) {
387
+ r = linearToSrgb255(srgb255ToLinear(r) * shade);
388
+ g = linearToSrgb255(srgb255ToLinear(g) * shade);
389
+ b = linearToSrgb255(srgb255ToLinear(b) * shade);
390
+ }
391
+ const tint = parseDrawingPercent(find("tint"));
392
+ if (tint !== void 0) {
393
+ r = linearToSrgb255(1 - (1 - srgb255ToLinear(r)) * tint);
394
+ g = linearToSrgb255(1 - (1 - srgb255ToLinear(g)) * tint);
395
+ b = linearToSrgb255(1 - (1 - srgb255ToLinear(b)) * tint);
396
+ }
397
+ if (["hue", "hueMod", "hueOff", "sat", "satMod", "satOff", "lum", "lumMod", "lumOff"].some(has)) {
398
+ const hsl = rgbToHsl(r, g, b);
399
+ const wrap = (degrees) => (degrees % 360 + 360) % 360;
400
+ const hueAbs = parseDrawingHueDegrees(find("hue"));
401
+ if (hueAbs !== void 0) hsl.h = wrap(hueAbs);
402
+ const hueMod = parseDrawingFraction(find("hueMod"));
403
+ if (hueMod !== void 0) hsl.h = wrap(hsl.h * hueMod);
404
+ const hueOff = parseDrawingHueDegrees(find("hueOff"));
405
+ if (hueOff !== void 0) hsl.h = wrap(hsl.h + hueOff);
406
+ const satAbs = parseDrawingFraction(find("sat"));
407
+ if (satAbs !== void 0) hsl.s = clampUnitInterval(satAbs);
408
+ const satMod = parseDrawingFraction(find("satMod"));
409
+ if (satMod !== void 0) hsl.s = clampUnitInterval(hsl.s * satMod);
410
+ const satOff = parseDrawingFraction(find("satOff"));
411
+ if (satOff !== void 0) hsl.s = clampUnitInterval(hsl.s + satOff);
412
+ const lumAbs = parseDrawingFraction(find("lum"));
413
+ if (lumAbs !== void 0) hsl.l = clampUnitInterval(lumAbs);
414
+ const lumMod = parseDrawingFraction(find("lumMod"));
415
+ if (lumMod !== void 0) hsl.l = clampUnitInterval(hsl.l * lumMod);
416
+ const lumOff = parseDrawingFraction(find("lumOff"));
417
+ if (lumOff !== void 0) hsl.l = clampUnitInterval(hsl.l + lumOff);
418
+ const round = options?.hslRounding === "halfDown" ? (value) => Math.ceil(value - 0.5) : Math.round;
419
+ ({ r, g, b } = hslToRgb(hsl.h, hsl.s, hsl.l, round));
420
+ }
421
+ let alpha = parseDrawingPercent(find("alpha")) ?? 1;
422
+ const alphaMod = parseDrawingFraction(find("alphaMod"));
423
+ if (alphaMod !== void 0) alpha = clampUnitInterval(alpha * alphaMod);
424
+ const alphaOff = parseDrawingFraction(find("alphaOff"));
425
+ if (alphaOff !== void 0) alpha = clampUnitInterval(alpha + alphaOff);
426
+ return {
427
+ hex: `#${toHex(r)}${toHex(g)}${toHex(b)}`,
428
+ alpha,
429
+ unapplied: [...new Set(color.transforms.map((entry) => entry.name))].filter(
430
+ (name) => !APPLIED.has(name)
431
+ )
432
+ };
433
+ }
434
+
435
+ // drawingml/drawing-color-css.ts
436
+ function drawingColorCss(value) {
437
+ if (!value || value.alpha === 1) return value?.hex;
438
+ const channels = [1, 3, 5].map(
439
+ (offset) => Number.parseInt(value.hex.slice(offset, offset + 2), 16)
440
+ );
441
+ return `rgba(${channels.join(",")},${value.alpha})`;
442
+ }
443
+
444
+ // drawingml/drawing-color-brightness.ts
445
+ function drawingColorBrightness(color) {
446
+ const transforms = color.transforms.filter(
447
+ (item) => ["lum", "lumMod", "lumOff"].includes(item.name)
448
+ );
449
+ if (!transforms.length) return 0;
450
+ const mod = transforms.find((item) => item.name === "lumMod");
451
+ const off = transforms.find((item) => item.name === "lumOff");
452
+ if (!mod || transforms[0] !== mod || transforms.length !== (off ? 2 : 1)) return void 0;
453
+ const multiplier = Number(mod.value);
454
+ const offset = off ? Number(off.value) : 0;
455
+ if (!mod.value || off && !off.value || !Number.isFinite(multiplier) || !Number.isFinite(offset) || multiplier < 0 || multiplier > 1e5 || offset < 0 || offset > 1e5)
456
+ return void 0;
457
+ if (off && multiplier + offset !== 1e5) return void 0;
458
+ return Math.round(off ? offset : multiplier - 1e5) / 1e3;
459
+ }
460
+ function withDrawingColorBrightness(color, percent) {
461
+ if (!Number.isFinite(percent) || percent < -100 || percent > 100)
462
+ throw new RangeError("Brightness must be from -100 to 100");
463
+ const result = structuredClone(color);
464
+ result.transforms = result.transforms.filter((item) => !["lumMod", "lumOff"].includes(item.name));
465
+ result.transforms.push({
466
+ name: "lumMod",
467
+ value: String(Math.round((100 - Math.abs(percent)) * 1e3))
468
+ });
469
+ if (percent > 0)
470
+ result.transforms.push({ name: "lumOff", value: String(Math.round(percent * 1e3)) });
471
+ return result;
472
+ }
473
+
474
+ // drawingml/drawing-fill.ts
475
+ var FILL_ELEMENTS = /* @__PURE__ */ new Set([
476
+ "noFill",
477
+ "solidFill",
478
+ "gradFill",
479
+ "pattFill",
480
+ "blipFill",
481
+ "grpFill"
482
+ ]);
483
+ function fillElementOf(properties) {
484
+ return properties ? elements(properties).find(
485
+ (element) => FILL_ELEMENTS.has(element.localName) && (!element.namespaceURI || element.namespaceURI === NS.a)
486
+ ) : void 0;
487
+ }
488
+ function parseDrawingFill(properties) {
489
+ const fill = fillElementOf(properties);
490
+ if (!fill) return void 0;
491
+ switch (fill.localName) {
492
+ case "noFill":
493
+ return { kind: "none" };
494
+ case "solidFill": {
495
+ const color = parseDrawingColorIn(fill);
496
+ return color ? { kind: "solid", color } : { kind: "unsupported", element: "solidFill" };
497
+ }
498
+ case "gradFill": {
499
+ const stops = children(first(fill, "gsLst", NS.a) ?? fill, "gs", NS.a).flatMap((stop) => {
500
+ const color = parseDrawingColorIn(stop);
501
+ const position = Number.parseInt(stop.getAttribute("pos") ?? "", 10);
502
+ return color && Number.isFinite(position) ? [{ position: position / 1e3, color }] : [];
503
+ });
504
+ const angle = Number.parseInt(first(fill, "lin", NS.a)?.getAttribute("ang") ?? "", 10);
505
+ const scaled = first(fill, "lin", NS.a)?.getAttribute("scaled");
506
+ const path = first(fill, "path", NS.a)?.getAttribute("path");
507
+ const focus = first(first(fill, "path", NS.a), "fillToRect", NS.a);
508
+ const tile = first(fill, "tileRect", NS.a);
509
+ const tileRect = tile ? {
510
+ l: Number(tile.getAttribute("l") ?? 0) / 1e5,
511
+ t: Number(tile.getAttribute("t") ?? 0) / 1e5,
512
+ r: Number(tile.getAttribute("r") ?? 0) / 1e5,
513
+ b: Number(tile.getAttribute("b") ?? 0) / 1e5
514
+ } : void 0;
515
+ const fillToRect = focus ? {
516
+ l: Number(focus.getAttribute("l") ?? 0) / 1e5,
517
+ t: Number(focus.getAttribute("t") ?? 0) / 1e5,
518
+ r: Number(focus.getAttribute("r") ?? 0) / 1e5,
519
+ b: Number(focus.getAttribute("b") ?? 0) / 1e5
520
+ } : void 0;
521
+ return {
522
+ kind: "gradient",
523
+ sourceXml: buildXml(fill),
524
+ stops,
525
+ ...Number.isFinite(angle) ? { angle: angle / 6e4 } : {},
526
+ ...scaled === "1" || scaled === "true" ? { scaled: true } : {},
527
+ ...scaled === "0" || scaled === "false" ? { scaled: false } : {},
528
+ ...path ? { path } : {},
529
+ ...fillToRect && Object.values(fillToRect).every(Number.isFinite) ? { fillToRect } : {},
530
+ ...tileRect && Object.values(tileRect).every(Number.isFinite) ? { tileRect } : {}
531
+ };
532
+ }
533
+ case "pattFill": {
534
+ const foreground = parseDrawingColorIn(first(fill, "fgClr", NS.a));
535
+ const background = parseDrawingColorIn(first(fill, "bgClr", NS.a));
536
+ return {
537
+ kind: "pattern",
538
+ preset: fill.getAttribute("prst") ?? "",
539
+ ...foreground ? { foreground } : {},
540
+ ...background ? { background } : {}
541
+ };
542
+ }
543
+ case "blipFill": {
544
+ const blip = first(fill, "blip", NS.a);
545
+ const relId = blip?.getAttributeNS(NS.r, "embed") || blip?.getAttribute("r:embed") || void 0;
546
+ return { kind: "picture", ...relId ? { relId } : {} };
547
+ }
548
+ default:
549
+ return { kind: "unsupported", element: fill.localName };
550
+ }
551
+ }
552
+ function parseDrawingLine(ln) {
553
+ if (!ln) return void 0;
554
+ const line = {};
555
+ const width = Number.parseInt(ln.getAttribute("w") ?? "", 10);
556
+ if (Number.isFinite(width)) line.widthEmu = width;
557
+ const fill = parseDrawingFill(ln);
558
+ if (fill) line.fill = fill;
559
+ const dash = first(ln, "prstDash", NS.a)?.getAttribute("val");
560
+ if (dash) line.dash = dash;
561
+ const cap = ln.getAttribute("cap");
562
+ if (cap) line.cap = cap;
563
+ return line;
564
+ }
565
+
566
+ // drawingml/drawing-text.ts
567
+ function parseSpacing(parent) {
568
+ for (const [name, unit, divisor] of [
569
+ ["spcPts", "points", 100],
570
+ ["spcPct", "percent", 1e5]
571
+ ]) {
572
+ const raw = first(parent, name, NS.a)?.getAttribute("val");
573
+ if (raw == null || !/^\d+$/.test(raw)) continue;
574
+ const value = Number(raw) / divisor;
575
+ if (Number.isFinite(value)) return { unit, value };
576
+ }
577
+ return void 0;
578
+ }
579
+ function parseProperties(properties) {
580
+ const parsed = {};
581
+ const size = Number.parseInt(properties?.getAttribute("sz") ?? "", 10);
582
+ if (Number.isFinite(size)) parsed.sizePt = size / 100;
583
+ const bold = booleanAttribute(properties, "b");
584
+ if (bold !== void 0) parsed.bold = bold;
585
+ const italic = booleanAttribute(properties, "i");
586
+ if (italic !== void 0) parsed.italic = italic;
587
+ const underline = properties?.getAttribute("u");
588
+ if (underline) parsed.underline = underline !== "none";
589
+ const color = parseDrawingColorIn(first(properties, "solidFill", NS.a));
590
+ if (color) parsed.color = color;
591
+ const typeface = first(properties, "latin", NS.a)?.getAttribute("typeface");
592
+ if (typeface) parsed.typeface = typeface;
593
+ return parsed;
594
+ }
595
+ function parseRun(run) {
596
+ return {
597
+ text: run.localName === "br" ? "\n" : first(run, "t", NS.a)?.textContent ?? "",
598
+ ...parseProperties(first(run, "rPr", NS.a))
599
+ };
600
+ }
601
+ function parseParagraph(paragraph) {
602
+ const runs = [];
603
+ for (const child of elements(paragraph))
604
+ if (child.namespaceURI === NS.a && ["r", "fld", "br"].includes(child.localName))
605
+ runs.push(parseRun(child));
606
+ const properties = first(paragraph, "pPr", NS.a);
607
+ const align = properties?.getAttribute("algn");
608
+ const defaults = parseProperties(first(properties, "defRPr", NS.a));
609
+ const lineSpacing = parseSpacing(first(properties, "lnSpc", NS.a));
610
+ const spaceBefore = parseSpacing(first(properties, "spcBef", NS.a));
611
+ const spaceAfter = parseSpacing(first(properties, "spcAft", NS.a));
612
+ return {
613
+ ...align ? { align } : {},
614
+ ...Object.keys(defaults).length ? { defaultProperties: defaults } : {},
615
+ ...lineSpacing ? { lineSpacing } : {},
616
+ ...spaceBefore ? { spaceBefore } : {},
617
+ ...spaceAfter ? { spaceAfter } : {},
618
+ runs
619
+ };
620
+ }
621
+ function parseDrawingTextBody(body) {
622
+ if (!body) return void 0;
623
+ const properties = first(body, "bodyPr", NS.a);
624
+ const paragraphs = children(body, "p", NS.a).map(parseParagraph);
625
+ const result = {
626
+ paragraphs,
627
+ text: paragraphs.map((paragraph) => paragraph.runs.map((run) => run.text).join("")).join("\n")
628
+ };
629
+ const anchor = properties?.getAttribute("anchor");
630
+ if (anchor) result.anchor = anchor;
631
+ const insets = {};
632
+ for (const [key, attribute] of [
633
+ ["left", "lIns"],
634
+ ["top", "tIns"],
635
+ ["right", "rIns"],
636
+ ["bottom", "bIns"]
637
+ ]) {
638
+ const value = Number.parseInt(properties?.getAttribute(attribute) ?? "", 10);
639
+ if (Number.isFinite(value)) insets[key] = value;
640
+ }
641
+ if (Object.keys(insets).length > 0) result.insetsEmu = insets;
642
+ return result;
643
+ }
644
+
645
+ // drawingml/drawing-geometry.ts
646
+ var int = (element, name) => Number.parseInt(element?.getAttribute(name) ?? "", 10);
647
+ function parseFrame(container) {
648
+ const off = first(container, "off", NS.a);
649
+ const ext = first(container, "ext", NS.a);
650
+ if (!off || !ext) return void 0;
651
+ return {
652
+ x: int(off, "x") || 0,
653
+ y: int(off, "y") || 0,
654
+ width: int(ext, "cx") || 0,
655
+ height: int(ext, "cy") || 0
656
+ };
657
+ }
658
+ function parseTransform(xfrm) {
659
+ const frame = parseFrame(xfrm);
660
+ if (!frame || !xfrm) return void 0;
661
+ const rot = int(xfrm, "rot");
662
+ return {
663
+ frame,
664
+ ...Number.isFinite(rot) && rot !== 0 ? { rotation: rot / 6e4 } : {},
665
+ ...booleanAttribute(xfrm, "flipH") ? { flipHorizontal: true } : {},
666
+ ...booleanAttribute(xfrm, "flipV") ? { flipVertical: true } : {}
667
+ };
668
+ }
669
+ function parsePathCommands(path) {
670
+ const commands = [];
671
+ const point = (element) => {
672
+ const x = int(element, "x");
673
+ const y = int(element, "y");
674
+ return Number.isFinite(x) && Number.isFinite(y) ? { x, y } : void 0;
675
+ };
676
+ for (const element of Array.from(path.childNodes)) {
677
+ if (element.nodeType !== 1) continue;
678
+ const node = element;
679
+ const points = children(node, "pt", NS.a).map(point);
680
+ if (points.some((entry) => entry === void 0)) return void 0;
681
+ const [p0, p1, p2] = points;
682
+ switch (node.localName) {
683
+ case "moveTo":
684
+ case "lnTo":
685
+ if (!p0) return void 0;
686
+ commands.push({ op: node.localName === "moveTo" ? "M" : "L", ...p0 });
687
+ break;
688
+ case "cubicBezTo":
689
+ if (!p0 || !p1 || !p2) return void 0;
690
+ commands.push({ op: "C", x1: p0.x, y1: p0.y, x2: p1.x, y2: p1.y, x: p2.x, y: p2.y });
691
+ break;
692
+ case "quadBezTo":
693
+ if (!p0 || !p1) return void 0;
694
+ commands.push({ op: "Q", x1: p0.x, y1: p0.y, x: p1.x, y: p1.y });
695
+ break;
696
+ case "arcTo": {
697
+ const wR = int(node, "wR");
698
+ const hR = int(node, "hR");
699
+ const startAngle = int(node, "stAng");
700
+ const swingAngle = int(node, "swAng");
701
+ if (![wR, hR, startAngle, swingAngle].every(Number.isFinite)) return void 0;
702
+ commands.push({
703
+ op: "A",
704
+ wR,
705
+ hR,
706
+ startAngle: startAngle / 6e4,
707
+ swingAngle: swingAngle / 6e4
708
+ });
709
+ break;
710
+ }
711
+ case "close":
712
+ commands.push({ op: "Z" });
713
+ break;
714
+ }
715
+ }
716
+ return commands;
717
+ }
718
+ function parseDrawingGeometry(spPr) {
719
+ const preset = first(spPr, "prstGeom", NS.a);
720
+ const custom = first(spPr, "custGeom", NS.a);
721
+ if (custom) {
722
+ const paths = [];
723
+ for (const path of children(first(custom, "pathLst", NS.a) ?? custom, "path", NS.a)) {
724
+ const commands = parsePathCommands(path);
725
+ if (!commands) return { geometry: "custom", issue: "CUSTOM_GEOMETRY_GUIDES_UNSUPPORTED" };
726
+ const width = int(path, "w");
727
+ const height = int(path, "h");
728
+ paths.push({
729
+ commands,
730
+ ...Number.isFinite(width) ? { width } : {},
731
+ ...Number.isFinite(height) ? { height } : {},
732
+ ...path.getAttribute("fill") ? { fill: path.getAttribute("fill") } : {},
733
+ ...path.getAttribute("stroke") === "0" || path.getAttribute("stroke") === "false" ? { stroke: false } : {}
734
+ });
735
+ }
736
+ return { geometry: "custom", paths };
737
+ }
738
+ const geometry = preset?.getAttribute("prst") || "rect";
739
+ const adjustments = {};
740
+ const avLst = first(preset, "avLst", NS.a);
741
+ if (avLst)
742
+ for (const guide of children(avLst, "gd", NS.a)) {
743
+ const name = guide.getAttribute("name");
744
+ const match = /^val\s+(-?\d+)/u.exec(guide.getAttribute("fmla") ?? "");
745
+ if (name && match?.[1]) adjustments[name] = Number.parseInt(match[1], 10);
746
+ }
747
+ return { geometry, ...Object.keys(adjustments).length > 0 ? { adjustments } : {} };
748
+ }
749
+
750
+ // units/constants.ts
751
+ var EMU_PER_PIXEL = 9525;
752
+
753
+ // drawingml/drawing-shadow.ts
754
+ function resolveDrawingShadow(effects, theme) {
755
+ const node = first(effects, "outerShdw", NS.a);
756
+ if (!node) return void 0;
757
+ const value = (key, fallback) => Number(node.getAttribute(key) ?? fallback);
758
+ if (value("sx", 1e5) !== 1e5 || value("sy", 1e5) !== 1e5 || value("kx", 0) !== 0 || value("ky", 0) !== 0)
759
+ return void 0;
760
+ const color = parseDrawingColorIn(node);
761
+ const resolved = color && resolveDrawingColor(color, theme, { transformOrder: "document" });
762
+ const blur = value("blurRad", 0) / EMU_PER_PIXEL;
763
+ const distance = value("dist", 0) / EMU_PER_PIXEL;
764
+ const angle = value("dir", 0) / 6e4 * Math.PI / 180;
765
+ if (!resolved || ![blur, distance, angle].every(Number.isFinite) || blur < 0 || distance < 0)
766
+ return void 0;
767
+ return {
768
+ color: resolved.hex,
769
+ opacity: resolved.alpha,
770
+ blur,
771
+ dx: Math.cos(angle) * distance,
772
+ dy: Math.sin(angle) * distance
773
+ };
774
+ }
775
+ function resolveDrawingShadowXml(xml, theme) {
776
+ return xml ? resolveDrawingShadow(parseXml(xml).documentElement, theme) : void 0;
777
+ }
778
+ function svgDropShadowElement(s, format) {
779
+ const num = format.number;
780
+ return `<feDropShadow dx="${num(s.dx)}" dy="${num(s.dy)}" stdDeviation="${num(s.blur / 2)}" flood-color="${format.color(s.color, "#000000")}" flood-opacity="${num(s.opacity)}" result="shadow"/>`;
781
+ }
782
+
783
+ // drawingml/write-color.ts
784
+ var ELEMENTS = {
785
+ srgb: "srgbClr",
786
+ scheme: "schemeClr",
787
+ system: "sysClr",
788
+ preset: "prstClr",
789
+ scrgb: "scrgbClr",
790
+ hsl: "hslClr"
791
+ };
792
+ function drawingColorXml(color) {
793
+ const local = ELEMENTS[color.kind];
794
+ const doc = parseXml(`<a:${local} xmlns:a="${NS.a}"/>`);
795
+ const root = doc.documentElement;
796
+ if (color.kind === "scrgb" || color.kind === "hsl") {
797
+ const keys = color.kind === "scrgb" ? ["r", "g", "b"] : ["hue", "sat", "lum"];
798
+ const values = color.value.split(",");
799
+ keys.forEach((key, i) => root.setAttribute(key, values[i] ?? "0"));
800
+ } else root.setAttribute("val", color.value);
801
+ if (color.fallback !== void 0 && color.kind === "system")
802
+ root.setAttribute("lastClr", color.fallback);
803
+ for (const transform of color.transforms) {
804
+ if (!/^[A-Za-z_][\w.-]*$/.test(transform.name))
805
+ throw new Error(`Invalid DrawingML transform ${transform.name}`);
806
+ const node = doc.createElementNS(NS.a, `a:${transform.name}`);
807
+ if (transform.value !== "") node.setAttribute("val", transform.value);
808
+ root.appendChild(node);
809
+ }
810
+ return buildXml(doc);
811
+ }
812
+
813
+ // drawingml/write-fill.ts
814
+ function setDrawingFillXml(properties, xml) {
815
+ const doc = properties.ownerDocument;
816
+ const wrapper = parseXml(`<w xmlns:a="${NS.a}">${xml}</w>`);
817
+ const fill = elements(wrapper.documentElement)[0];
818
+ const names = ["solidFill", "gradFill", "pattFill", "blipFill", "grpFill", "noFill"];
819
+ if (elements(wrapper.documentElement).length !== 1 || !fill || fill.namespaceURI !== NS.a || !names.includes(fill.localName))
820
+ throw new Error("Invalid DrawingML fill XML");
821
+ const existing = elements(properties).filter(
822
+ (node) => node.namespaceURI === NS.a && names.includes(node.localName)
823
+ );
824
+ const next = doc.importNode(fill, true);
825
+ if (existing[0]) properties.replaceChild(next, existing[0]);
826
+ else
827
+ properties.insertBefore(
828
+ next,
829
+ elements(properties).find(
830
+ (node) => node.namespaceURI === NS.a && ["ln", "effectLst", "effectDag", "scene3d", "sp3d", "extLst"].includes(node.localName)
831
+ ) ?? null
832
+ );
833
+ for (const extra of existing.slice(1)) properties.removeChild(extra);
834
+ }
835
+ function drawingFillXml(fill) {
836
+ if (fill.kind === "none") return "<a:noFill/>";
837
+ if (fill.kind === "solid") return `<a:solidFill>${drawingColorXml(fill.color)}</a:solidFill>`;
838
+ if (fill.kind !== "gradient") return void 0;
839
+ const doc = parseXml(fill.sourceXml ?? `<a:gradFill xmlns:a="${NS.a}"/>`);
840
+ const root = doc.documentElement;
841
+ if (root.namespaceURI !== NS.a || root.localName !== "gradFill")
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);
844
+ let list = first(root, "gsLst", NS.a);
845
+ if (!list) {
846
+ list = doc.createElementNS(NS.a, "a:gsLst");
847
+ root.insertBefore(list, root.firstChild);
848
+ }
849
+ const stops = children(list, "gs", NS.a).filter(
850
+ (node) => parseDrawingColorIn(node) && Number.isFinite(Number.parseInt(node.getAttribute("pos") ?? "", 10))
851
+ );
852
+ fill.stops.forEach((stop, index) => {
853
+ const node = stops[index] ?? doc.createElementNS(NS.a, "a:gs");
854
+ if (!node.parentNode) list.appendChild(node);
855
+ node.setAttribute("pos", String(Math.round(stop.position * 1e3)));
856
+ for (const old of elements(node))
857
+ if (old.namespaceURI === NS.a && old.localName.endsWith("Clr")) node.removeChild(old);
858
+ node.insertBefore(fragment(drawingColorXml(stop.color)), node.firstChild);
859
+ });
860
+ for (const stop of stops.slice(fill.stops.length)) list.removeChild(stop);
861
+ for (const node of elements(root))
862
+ if (node.namespaceURI === NS.a && (node.localName === "lin" && (fill.angle === void 0 || fill.path !== void 0) || node.localName === "path" && fill.path === void 0))
863
+ root.removeChild(node);
864
+ if (fill.angle !== void 0 && fill.path === void 0) {
865
+ let linear = first(root, "lin", NS.a);
866
+ if (!linear) {
867
+ linear = doc.createElementNS(NS.a, "a:lin");
868
+ root.insertBefore(
869
+ linear,
870
+ first(root, "tileRect", NS.a) ?? first(root, "extLst", NS.a) ?? null
871
+ );
872
+ }
873
+ linear.setAttribute("ang", String(Math.round(fill.angle * 6e4)));
874
+ if (fill.scaled !== void 0) linear.setAttribute("scaled", fill.scaled ? "1" : "0");
875
+ }
876
+ if (fill.path !== void 0) {
877
+ let path = first(root, "path", NS.a);
878
+ if (!path) {
879
+ path = doc.createElementNS(NS.a, "a:path");
880
+ root.insertBefore(path, first(root, "tileRect", NS.a) ?? first(root, "extLst", NS.a) ?? null);
881
+ }
882
+ path.setAttribute("path", fill.path);
883
+ if (!fill.fillToRect) {
884
+ const old = first(path, "fillToRect", NS.a);
885
+ if (old) path.removeChild(old);
886
+ } else {
887
+ let focus = first(path, "fillToRect", NS.a);
888
+ if (!focus) {
889
+ focus = doc.createElementNS(NS.a, "a:fillToRect");
890
+ path.appendChild(focus);
891
+ }
892
+ for (const [key, value] of Object.entries(fill.fillToRect))
893
+ focus.setAttribute(key, String(Math.round(value * 1e5)));
894
+ }
895
+ }
896
+ if (fill.tileRect) {
897
+ let tile = first(root, "tileRect", NS.a);
898
+ if (!tile) {
899
+ tile = doc.createElementNS(NS.a, "a:tileRect");
900
+ root.insertBefore(tile, first(root, "extLst", NS.a) ?? null);
901
+ }
902
+ for (const [key, value] of Object.entries(fill.tileRect))
903
+ tile.setAttribute(key, String(Math.round(value * 1e5)));
904
+ }
905
+ return buildXml(doc);
906
+ }
907
+
908
+ // drawingml/gradient-preset-data.ts
909
+ var OFFICE_GRADIENT_PRESET_DATA = [
910
+ [
911
+ "Early Sunset",
912
+ [
913
+ [0, "000082"],
914
+ [3e4, "66008F"],
915
+ [64999, "BA0066"],
916
+ [89999, "FF0000"],
917
+ [1e5, "FF8200"]
918
+ ]
919
+ ],
920
+ [
921
+ "Late Sunset",
922
+ [
923
+ [0, "000000"],
924
+ [2e4, "000040"],
925
+ [5e4, "400040"],
926
+ [75e3, "8F0040"],
927
+ [89999, "F27300"],
928
+ [1e5, "FFBF00"]
929
+ ]
930
+ ],
931
+ [
932
+ "Nightfall",
933
+ [
934
+ [0, "000000"],
935
+ [39999, "0A128C"],
936
+ [7e4, "181CC7"],
937
+ [88e3, "7005D4"],
938
+ [1e5, "8C3D91"]
939
+ ]
940
+ ],
941
+ [
942
+ "Daybreak",
943
+ [
944
+ [0, "5E9EFF"],
945
+ [39999, "85C2FF"],
946
+ [7e4, "C4D6EB"],
947
+ [1e5, "FFEBFA"]
948
+ ]
949
+ ],
950
+ [
951
+ "Horizon",
952
+ [
953
+ [0, "DCEBF5"],
954
+ [8e3, "83A7C3"],
955
+ [13e3, "768FB9"],
956
+ [21001, "83A7C3"],
957
+ [52e3, "FFFFFF"],
958
+ [56e3, "9C6563"],
959
+ [58e3, "80302D"],
960
+ [71001, "C0524E"],
961
+ [94e3, "EBDAD4"],
962
+ [1e5, "55261C"]
963
+ ]
964
+ ],
965
+ [
966
+ "Desert",
967
+ [
968
+ [0, "FC9FCB"],
969
+ [13e3, "F8B049"],
970
+ [21001, "F8B049"],
971
+ [63e3, "FEE7F2"],
972
+ [67e3, "F952A0"],
973
+ [69e3, "C50849"],
974
+ [82001, "B43E85"],
975
+ [1e5, "F8B049"]
976
+ ]
977
+ ],
978
+ [
979
+ "Ocean",
980
+ [
981
+ [0, "03D4A8"],
982
+ [25e3, "21D6E0"],
983
+ [75e3, "0087E6"],
984
+ [1e5, "005CBF"]
985
+ ]
986
+ ],
987
+ [
988
+ "Calm Water",
989
+ [
990
+ [0, "CCCCFF"],
991
+ [17999, "99CCFF"],
992
+ [36e3, "9966FF"],
993
+ [61e3, "CC99FF"],
994
+ [82001, "99CCFF"],
995
+ [1e5, "CCCCFF"]
996
+ ]
997
+ ],
998
+ [
999
+ "Fire",
1000
+ [
1001
+ [0, "FFF200"],
1002
+ [45e3, "FF7A00"],
1003
+ [7e4, "FF0300"],
1004
+ [1e5, "4D0808"]
1005
+ ]
1006
+ ],
1007
+ [
1008
+ "Fog",
1009
+ [
1010
+ [0, "8488C4"],
1011
+ [53e3, "D4DEFF"],
1012
+ [83e3, "D4DEFF"],
1013
+ [1e5, "96AB94"]
1014
+ ]
1015
+ ],
1016
+ [
1017
+ "Moss",
1018
+ [
1019
+ [0, "DDEBCF"],
1020
+ [5e4, "9CB86E"],
1021
+ [1e5, "156B13"]
1022
+ ]
1023
+ ],
1024
+ [
1025
+ "Peacock",
1026
+ [
1027
+ [0, "3399FF"],
1028
+ [16e3, "00CCCC"],
1029
+ [47e3, "9999FF"],
1030
+ [60001, "2E6792"],
1031
+ [71001, "3333CC"],
1032
+ [81e3, "1170FF"],
1033
+ [1e5, "006699"]
1034
+ ]
1035
+ ],
1036
+ [
1037
+ "Wheat",
1038
+ [
1039
+ [0, "FBEAC7"],
1040
+ [17999, "FEE7F2"],
1041
+ [36e3, "FAC77D"],
1042
+ [61e3, "FBA97D"],
1043
+ [82001, "FBD49C"],
1044
+ [1e5, "FEE7F2"]
1045
+ ]
1046
+ ],
1047
+ [
1048
+ "Parchment",
1049
+ [
1050
+ [0, "FFEFD1"],
1051
+ [64999, "F0EBD5"],
1052
+ [1e5, "D1C39F"]
1053
+ ]
1054
+ ],
1055
+ [
1056
+ "Mahogany",
1057
+ [
1058
+ [0, "D6B19C"],
1059
+ [3e4, "D49E6C"],
1060
+ [7e4, "A65528"],
1061
+ [1e5, "663012"]
1062
+ ]
1063
+ ],
1064
+ [
1065
+ "Rainbow",
1066
+ [
1067
+ [0, "A603AB"],
1068
+ [21001, "0819FB"],
1069
+ [35001, "1A8D48"],
1070
+ [52e3, "FFFF00"],
1071
+ [73e3, "EE3F17"],
1072
+ [88e3, "E81766"],
1073
+ [1e5, "A603AB"]
1074
+ ]
1075
+ ],
1076
+ [
1077
+ "Rainbow II",
1078
+ [
1079
+ [0, "FF3399"],
1080
+ [25e3, "FF6633"],
1081
+ [5e4, "FFFF00"],
1082
+ [75e3, "01A78F"],
1083
+ [1e5, "3366FF"]
1084
+ ]
1085
+ ],
1086
+ [
1087
+ "Gold",
1088
+ [
1089
+ [0, "E6DCAC"],
1090
+ [12e3, "E6D78A"],
1091
+ [3e4, "C7AC4C"],
1092
+ [45e3, "E6D78A"],
1093
+ [77e3, "C7AC4C"],
1094
+ [1e5, "E6DCAC"]
1095
+ ]
1096
+ ],
1097
+ [
1098
+ "Gold II",
1099
+ [
1100
+ [0, "FBE4AE"],
1101
+ [13e3, "BD922A"],
1102
+ [21001, "BD922A"],
1103
+ [63e3, "FBE4AE"],
1104
+ [67e3, "BD922A"],
1105
+ [69e3, "835E17"],
1106
+ [82001, "A28949"],
1107
+ [1e5, "FAE3B7"]
1108
+ ]
1109
+ ],
1110
+ [
1111
+ "Brass",
1112
+ [
1113
+ [0, "825600"],
1114
+ [13e3, "FFA800"],
1115
+ [28e3, "825600"],
1116
+ [42999, "FFA800"],
1117
+ [58e3, "825600"],
1118
+ [72e3, "FFA800"],
1119
+ [87e3, "825600"],
1120
+ [1e5, "FFA800"]
1121
+ ]
1122
+ ],
1123
+ [
1124
+ "Chrome",
1125
+ [
1126
+ [0, "FFFFFF"],
1127
+ [16e3, "1F1F1F"],
1128
+ [17999, "FFFFFF"],
1129
+ [42e3, "636363"],
1130
+ [53e3, "CFCFCF"],
1131
+ [66e3, "CFCFCF"],
1132
+ [75999, "1F1F1F"],
1133
+ [78999, "FFFFFF"],
1134
+ [1e5, "7F7F7F"]
1135
+ ]
1136
+ ],
1137
+ [
1138
+ "Chrome II",
1139
+ [
1140
+ [0, "CBCBCB"],
1141
+ [13e3, "5F5F5F"],
1142
+ [21001, "5F5F5F"],
1143
+ [63e3, "FFFFFF"],
1144
+ [67e3, "B2B2B2"],
1145
+ [69e3, "292929"],
1146
+ [82001, "777777"],
1147
+ [1e5, "EAEAEA"]
1148
+ ]
1149
+ ],
1150
+ [
1151
+ "Silver",
1152
+ [
1153
+ [0, "FFFFFF"],
1154
+ [7001, "E6E6E6"],
1155
+ [32001, "7D8496"],
1156
+ [47e3, "E6E6E6"],
1157
+ [85001, "7D8496"],
1158
+ [1e5, "E6E6E6"]
1159
+ ]
1160
+ ],
1161
+ [
1162
+ "Sapphire",
1163
+ [
1164
+ [0, "000082"],
1165
+ [13e3, "0047FF"],
1166
+ [28e3, "000082"],
1167
+ [42999, "0047FF"],
1168
+ [58e3, "000082"],
1169
+ [72e3, "0047FF"],
1170
+ [87e3, "000082"],
1171
+ [1e5, "0047FF"]
1172
+ ]
1173
+ ]
1174
+ ];
1175
+
1176
+ // drawingml/gradient-presets.ts
1177
+ var OFFICE_GRADIENT_PRESETS = OFFICE_GRADIENT_PRESET_DATA.map(([label], index) => ({
1178
+ id: index + 1,
1179
+ label
1180
+ }));
1181
+ function officeGradientPresetFill(id) {
1182
+ const data = Number.isInteger(id) && OFFICE_GRADIENT_PRESET_DATA[id - 1];
1183
+ if (!data) throw new RangeError(`Unknown Office gradient preset ${id}`);
1184
+ return {
1185
+ kind: "gradient",
1186
+ angle: 90,
1187
+ scaled: true,
1188
+ sourceXml: `<a:gradFill xmlns:a="${NS.a}" flip="none" rotWithShape="1"><a:tileRect/></a:gradFill>`,
1189
+ stops: data[1].map(([position, color]) => ({
1190
+ position: position / 1e3,
1191
+ color: { kind: "srgb", value: color, transforms: [] }
1192
+ }))
1193
+ };
1194
+ }
1195
+ function officeGradientPresetId(fill) {
1196
+ if (fill.kind !== "gradient" || fill.path || fill.angle !== 90 || fill.scaled !== true)
1197
+ return void 0;
1198
+ const index = OFFICE_GRADIENT_PRESET_DATA.findIndex(
1199
+ ([, stops]) => stops.length === fill.stops.length && stops.every(([position, color], index2) => {
1200
+ const stop = fill.stops[index2];
1201
+ return stop?.position === position / 1e3 && stop.color.kind === "srgb" && stop.color.value.toUpperCase() === color && stop.color.transforms.length === 0;
1202
+ })
1203
+ );
1204
+ return index < 0 ? void 0 : index + 1;
1205
+ }
1206
+
1207
+ // drawingml/gradient-geometry.ts
1208
+ var RECT_GRADIENT_DIRECTIONS = [
1209
+ { id: "center", label: "From Center", x: 0.5, y: 0.5 },
1210
+ { id: "top-left", label: "From Top Left Corner", x: 0, y: 0 },
1211
+ { id: "top-right", label: "From Top Right Corner", x: 1, y: 0 },
1212
+ { id: "bottom-left", label: "From Bottom Left Corner", x: 0, y: 1 },
1213
+ { id: "bottom-right", label: "From Bottom Right Corner", x: 1, y: 1 }
1214
+ ];
1215
+ function rectGradientFocus(id) {
1216
+ const direction = RECT_GRADIENT_DIRECTIONS.find((direction2) => direction2.id === id);
1217
+ if (!direction) throw new RangeError(`Unknown rectangular gradient direction ${id}`);
1218
+ return { l: direction.x, t: direction.y, r: 1 - direction.x, b: 1 - direction.y };
1219
+ }
1220
+ function rectGradientDirection(focus) {
1221
+ return RECT_GRADIENT_DIRECTIONS.find(
1222
+ ({ x, y }) => focus?.l === x && focus.t === y && focus.r === 1 - x && focus.b === 1 - y
1223
+ )?.id;
1224
+ }
1225
+ function withDrawingGradientGeometry(fill, type, direction = "center") {
1226
+ const next = structuredClone(fill);
1227
+ next.tileRect = { l: 0, t: 0, r: 0, b: 0 };
1228
+ if (type === "linear") {
1229
+ delete next.path;
1230
+ delete next.fillToRect;
1231
+ next.angle ??= 90;
1232
+ next.scaled = true;
1233
+ } else if (type === "rect" || type === "circle" || type === "shape") {
1234
+ next.path = type;
1235
+ next.fillToRect = rectGradientFocus(direction);
1236
+ delete next.angle;
1237
+ delete next.scaled;
1238
+ if (direction !== "center") {
1239
+ const { l, t } = next.fillToRect;
1240
+ next.tileRect = {
1241
+ l: l === 0 ? -1 : 0,
1242
+ t: t === 0 ? -1 : 0,
1243
+ r: l === 1 ? -1 : 0,
1244
+ b: t === 1 ? -1 : 0
1245
+ };
1246
+ }
1247
+ } else throw new RangeError(`Unknown gradient type ${type}`);
1248
+ return next;
1249
+ }
1250
+
1251
+ // drawingml/rect-path-gradient.ts
1252
+ var BAND_COUNT = 40;
1253
+ function hexToRgb(color) {
1254
+ const parsed = hexToRgbChannels(color);
1255
+ if (parsed) return parsed;
1256
+ const hex = color.replace("#", "");
1257
+ return {
1258
+ r: Number.parseInt(hex.slice(0, 2), 16) || 0,
1259
+ g: Number.parseInt(hex.slice(2, 4), 16) || 0,
1260
+ b: Number.parseInt(hex.slice(4, 6), 16) || 0
1261
+ };
1262
+ }
1263
+ function toHexChannel(value) {
1264
+ return toHex(value).toLowerCase();
1265
+ }
1266
+ function lerpStops(a, b, t) {
1267
+ const ca = hexToRgb(a.color);
1268
+ const cb = hexToRgb(b.color);
1269
+ const oa = a.opacity ?? 1;
1270
+ const ob = b.opacity ?? 1;
1271
+ return {
1272
+ color: `#${toHexChannel(ca.r + (cb.r - ca.r) * t)}${toHexChannel(ca.g + (cb.g - ca.g) * t)}${toHexChannel(ca.b + (cb.b - ca.b) * t)}`,
1273
+ opacity: oa + (ob - oa) * t
1274
+ };
1275
+ }
1276
+ function colorAt(stops, position) {
1277
+ const first2 = stops[0];
1278
+ const last = stops[stops.length - 1];
1279
+ if (position <= first2.position) {
1280
+ return { color: first2.color, opacity: first2.opacity ?? 1 };
1281
+ }
1282
+ if (position >= last.position) {
1283
+ return { color: last.color, opacity: last.opacity ?? 1 };
1284
+ }
1285
+ for (let i = 0; i < stops.length - 1; i += 1) {
1286
+ const from = stops[i];
1287
+ const to = stops[i + 1];
1288
+ if (position >= from.position && position <= to.position) {
1289
+ const span = to.position - from.position;
1290
+ const t = span > 0 ? (position - from.position) / span : 0;
1291
+ return lerpStops(from, to, t);
1292
+ }
1293
+ }
1294
+ return { color: last.color, opacity: last.opacity ?? 1 };
1295
+ }
1296
+ function resolveInnerRect(fillToRect, focalPoint) {
1297
+ let centerX = 50;
1298
+ let centerY = 50;
1299
+ let width = 0;
1300
+ let height = 0;
1301
+ if (fillToRect) {
1302
+ const { l, t, r, b } = fillToRect;
1303
+ centerX = (l + (1 - r)) / 2 * 100;
1304
+ centerY = (t + (1 - b)) / 2 * 100;
1305
+ width = Math.max(0, Math.min(1, 1 - l - r)) * 100;
1306
+ height = Math.max(0, Math.min(1, 1 - t - b)) * 100;
1307
+ if (focalPoint) {
1308
+ centerX = (centerX + focalPoint.x * 100) / 2;
1309
+ centerY = (centerY + focalPoint.y * 100) / 2;
1310
+ }
1311
+ } else if (focalPoint) {
1312
+ centerX = focalPoint.x * 100;
1313
+ centerY = focalPoint.y * 100;
1314
+ }
1315
+ return {
1316
+ left: centerX - width / 2,
1317
+ top: centerY - height / 2,
1318
+ right: centerX + width / 2,
1319
+ bottom: centerY + height / 2
1320
+ };
1321
+ }
1322
+ function lerpEdge(inner, outer, t) {
1323
+ return inner + (outer - inner) * t;
1324
+ }
1325
+ function buildRectPathGradientSvg(stops, focalPoint, fillToRect, options) {
1326
+ if (stops.length === 0) {
1327
+ return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"/>';
1328
+ }
1329
+ const sorted = [...stops].sort((a, b) => a.position - b.position);
1330
+ const inner = resolveInnerRect(fillToRect, focalPoint);
1331
+ const rects = [];
1332
+ const alphaRects = [];
1333
+ const masked = options?.independentOpacity && sorted.some((stop) => (stop.opacity ?? 1) < 1);
1334
+ const bands = options?.bands ?? BAND_COUNT;
1335
+ if (!Number.isInteger(bands) || bands < 1) throw new RangeError("Invalid gradient band count");
1336
+ for (let i = bands; i >= 0; i -= 1) {
1337
+ const t = i / bands;
1338
+ const { color, opacity } = colorAt(sorted, t * 100);
1339
+ const left = lerpEdge(inner.left, 0, t);
1340
+ const top = lerpEdge(inner.top, 0, t);
1341
+ const right = lerpEdge(inner.right, 100, t);
1342
+ const bottom = lerpEdge(inner.bottom, 100, t);
1343
+ const opacityAttr = !masked && opacity < 1 ? ` fill-opacity="${Math.max(0, opacity).toFixed(3)}"` : "";
1344
+ rects.push(
1345
+ `<rect x="${left.toFixed(2)}" y="${top.toFixed(2)}" width="${(right - left).toFixed(2)}" height="${(bottom - top).toFixed(2)}" fill="${color}"${opacityAttr}/>`
1346
+ );
1347
+ if (masked) {
1348
+ const channel = toHexChannel(opacity * 255);
1349
+ alphaRects.push(
1350
+ `<rect x="${left.toFixed(2)}" y="${top.toFixed(2)}" width="${(right - left).toFixed(2)}" height="${(bottom - top).toFixed(2)}" fill="#${channel}${channel}${channel}"/>`
1351
+ );
1352
+ }
1353
+ }
1354
+ const paint = masked ? `<defs><mask id="alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="100" height="100" mask-type="luminance" color-interpolation="sRGB">${alphaRects.join("")}</mask></defs><g mask="url(#alpha)">${rects.join("")}</g>` : rects.join("");
1355
+ return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none">${paint}</svg>`;
1356
+ }
1357
+ function buildRectPathGradientImage(stops, focalPoint, fillToRect) {
1358
+ const markup = buildRectPathGradientSvg(stops, focalPoint, fillToRect);
1359
+ return `url("data:image/svg+xml,${encodeURIComponent(markup)}")`;
1360
+ }
1361
+
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
+ // drawingml/theme.ts
1385
+ var MAP_KEYS = [
1386
+ "bg1",
1387
+ "tx1",
1388
+ "bg2",
1389
+ "tx2",
1390
+ "accent1",
1391
+ "accent2",
1392
+ "accent3",
1393
+ "accent4",
1394
+ "accent5",
1395
+ "accent6",
1396
+ "hlink",
1397
+ "folHlink"
1398
+ ];
1399
+ var SLOT_SET = new Set(THEME_COLOR_SLOTS);
1400
+ function isThemeColorSlot(value) {
1401
+ return SLOT_SET.has(value);
1402
+ }
1403
+ function nonEmpty(value) {
1404
+ return value ? value : void 0;
1405
+ }
1406
+ function parseThemeColorScheme(scheme) {
1407
+ const result = { colors: {} };
1408
+ if (!scheme) return result;
1409
+ const name = nonEmpty(scheme.getAttribute("name"));
1410
+ if (name) result.name = name;
1411
+ for (const slot of THEME_COLOR_SLOTS) {
1412
+ const color = parseDrawingColorIn(first(scheme, slot, NS.a));
1413
+ if (color) result.colors[slot] = color;
1414
+ }
1415
+ return result;
1416
+ }
1417
+ function parseFontCollection(collection) {
1418
+ const result = { scripts: {} };
1419
+ if (!collection) return result;
1420
+ const typeface = (local) => nonEmpty(first(collection, local, NS.a)?.getAttribute("typeface"));
1421
+ const latin = typeface("latin");
1422
+ const eastAsia = typeface("ea");
1423
+ const complexScript = typeface("cs");
1424
+ if (latin) result.latin = latin;
1425
+ if (eastAsia) result.eastAsia = eastAsia;
1426
+ if (complexScript) result.complexScript = complexScript;
1427
+ for (const font of elements(collection)) {
1428
+ if (font.localName !== "font") continue;
1429
+ const script = nonEmpty(font.getAttribute("script"));
1430
+ const face = nonEmpty(font.getAttribute("typeface"));
1431
+ if (script && face && !Object.hasOwn(result.scripts, script)) result.scripts[script] = face;
1432
+ }
1433
+ return result;
1434
+ }
1435
+ function parseThemeFontScheme(scheme) {
1436
+ const result = {
1437
+ major: parseFontCollection(first(scheme, "majorFont", NS.a)),
1438
+ minor: parseFontCollection(first(scheme, "minorFont", NS.a))
1439
+ };
1440
+ const name = nonEmpty(scheme?.getAttribute("name"));
1441
+ if (name) result.name = name;
1442
+ return result;
1443
+ }
1444
+ function rootOf(source) {
1445
+ return "documentElement" in source ? source.documentElement : source;
1446
+ }
1447
+ function parseTheme(source) {
1448
+ const root = rootOf(source);
1449
+ const holder = first(root, "themeElements", NS.a) ?? root;
1450
+ const theme = {
1451
+ colorScheme: parseThemeColorScheme(first(holder, "clrScheme", NS.a)),
1452
+ fontScheme: parseThemeFontScheme(first(holder, "fontScheme", NS.a))
1453
+ };
1454
+ const name = nonEmpty(root.getAttribute("name"));
1455
+ if (name) theme.name = name;
1456
+ return theme;
1457
+ }
1458
+ function parseThemeXml(xml, label = "DrawingML theme") {
1459
+ return parseTheme(parseXml(xml, { label }));
1460
+ }
1461
+ function parseThemeColorMap(element) {
1462
+ const map = {};
1463
+ if (!element) return map;
1464
+ for (const key of MAP_KEYS) {
1465
+ const value = element.getAttribute(key);
1466
+ if (value && isThemeColorSlot(value)) map[key] = value;
1467
+ }
1468
+ return map;
1469
+ }
1470
+
1471
+ // drawingml/theme-color.ts
1472
+ function isLogical(name) {
1473
+ return Object.hasOwn(DEFAULT_THEME_COLOR_MAP, name);
1474
+ }
1475
+ function themeColorSlotFor(name, colorMap = {}) {
1476
+ if (isLogical(name)) return colorMap[name] ?? DEFAULT_THEME_COLOR_MAP[name];
1477
+ if (!isThemeColorSlot(name)) return void 0;
1478
+ if (name === "dk1" || name === "lt1" || name === "dk2" || name === "lt2") return name;
1479
+ return colorMap[name] ?? name;
1480
+ }
1481
+ function resolveSchemeColor(scheme, name, colorMap) {
1482
+ const slot = themeColorSlotFor(name, colorMap);
1483
+ return slot ? scheme.colors[slot] : void 0;
1484
+ }
1485
+ function themeSlotHex(color) {
1486
+ if (!color) return void 0;
1487
+ const value = color.kind === "srgb" ? color.value : color.kind === "system" ? color.fallback : void 0;
1488
+ return value ? value.toUpperCase() : void 0;
1489
+ }
1490
+ function themeDrawingColorTheme(scheme, colorMap) {
1491
+ return {
1492
+ scheme(name) {
1493
+ const hex = scheme && themeSlotHex(resolveSchemeColor(scheme, name, colorMap));
1494
+ return hex ? `#${hex.replace(/^#/, "")}` : void 0;
1495
+ }
1496
+ };
1497
+ }
1498
+
1499
+ exports.DEFAULT_THEME_COLOR_MAP = DEFAULT_THEME_COLOR_MAP;
1500
+ exports.OFFICE_GRADIENT_PRESETS = OFFICE_GRADIENT_PRESETS;
1501
+ exports.RECT_GRADIENT_DIRECTIONS = RECT_GRADIENT_DIRECTIONS;
1502
+ exports.THEME_COLOR_SLOTS = THEME_COLOR_SLOTS;
1503
+ exports.attributeReader = attributeReader;
1504
+ exports.booleanAttribute = booleanAttribute;
1505
+ exports.buildRectPathGradientImage = buildRectPathGradientImage;
1506
+ exports.buildRectPathGradientSvg = buildRectPathGradientSvg;
1507
+ exports.descendants = descendants;
1508
+ exports.drawingColorBrightness = drawingColorBrightness;
1509
+ exports.drawingColorCss = drawingColorCss;
1510
+ exports.drawingColorXml = drawingColorXml;
1511
+ exports.drawingFillXml = drawingFillXml;
1512
+ exports.fillElementOf = fillElementOf;
1513
+ exports.integerAttribute = integerAttribute;
1514
+ exports.isThemeColorSlot = isThemeColorSlot;
1515
+ exports.officeGradientPresetFill = officeGradientPresetFill;
1516
+ exports.officeGradientPresetId = officeGradientPresetId;
1517
+ exports.orderedColorTransforms = orderedColorTransforms;
1518
+ exports.parseDrawingColor = parseDrawingColor;
1519
+ exports.parseDrawingColorIn = parseDrawingColorIn;
1520
+ exports.parseDrawingColorList = parseDrawingColorList;
1521
+ exports.parseDrawingFill = parseDrawingFill;
1522
+ exports.parseDrawingGeometry = parseDrawingGeometry;
1523
+ exports.parseDrawingLine = parseDrawingLine;
1524
+ exports.parseDrawingTextBody = parseDrawingTextBody;
1525
+ exports.parseFrame = parseFrame;
1526
+ exports.parseTheme = parseTheme;
1527
+ exports.parseThemeColorMap = parseThemeColorMap;
1528
+ exports.parseThemeColorScheme = parseThemeColorScheme;
1529
+ exports.parseThemeFontScheme = parseThemeFontScheme;
1530
+ exports.parseThemeXml = parseThemeXml;
1531
+ exports.parseTransform = parseTransform;
1532
+ exports.rectGradientDirection = rectGradientDirection;
1533
+ exports.rectGradientFocus = rectGradientFocus;
1534
+ exports.resolveDrawingColor = resolveDrawingColor;
1535
+ exports.resolveDrawingShadow = resolveDrawingShadow;
1536
+ exports.resolveDrawingShadowXml = resolveDrawingShadowXml;
1537
+ exports.resolveSchemeColor = resolveSchemeColor;
1538
+ exports.setDrawingFillXml = setDrawingFillXml;
1539
+ exports.stringAttribute = stringAttribute;
1540
+ exports.svgDropShadowElement = svgDropShadowElement;
1541
+ exports.themeColorSlotFor = themeColorSlotFor;
1542
+ exports.themeDrawingColorTheme = themeDrawingColorTheme;
1543
+ exports.themeSlotHex = themeSlotHex;
1544
+ exports.withDrawingColorBrightness = withDrawingColorBrightness;
1545
+ exports.withDrawingGradientGeometry = withDrawingGradientGeometry;