ooxml-ui 1.25.0 → 1.26.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 (353) hide show
  1. package/README.md +82 -19
  2. package/custom-elements.json +321 -1
  3. package/dist/bindings/bind-element.d.ts +29 -0
  4. package/dist/bindings/contract.d.ts +115 -0
  5. package/dist/bindings/equality.d.ts +9 -0
  6. package/dist/bindings/handle.d.ts +33 -0
  7. package/dist/bindings/index.d.ts +6 -0
  8. package/dist/bindings/react.d.ts +21 -0
  9. package/dist/bindings/react.js +39 -0
  10. package/dist/bindings/solid.d.ts +14 -0
  11. package/dist/bindings/solid.js +27 -0
  12. package/dist/bindings/src-loader.d.ts +14 -0
  13. package/dist/bindings/tracker.d.ts +14 -0
  14. package/dist/bindings/vue.d.ts +35 -0
  15. package/dist/bindings/vue.js +65 -0
  16. package/dist/bindings.js +3 -0
  17. package/dist/chart/data-sheet-keys.d.ts +38 -0
  18. package/dist/chart/data-sheet-keys.d.ts.map +1 -0
  19. package/dist/chart/data-sheet-labels.d.ts +36 -0
  20. package/dist/chart/data-sheet-labels.d.ts.map +1 -0
  21. package/dist/chart/data-sheet.d.ts +68 -0
  22. package/dist/chart/data-sheet.d.ts.map +1 -0
  23. package/dist/chart/design-galleries.d.ts +52 -0
  24. package/dist/chart/design-galleries.d.ts.map +1 -0
  25. package/dist/chart/format-pane-3d.d.ts +7 -0
  26. package/dist/chart/format-pane-3d.d.ts.map +1 -0
  27. package/dist/chart/format-pane-api.d.ts +17 -0
  28. package/dist/chart/format-pane-api.d.ts.map +1 -0
  29. package/dist/chart/format-pane-axis.d.ts +5 -0
  30. package/dist/chart/format-pane-axis.d.ts.map +1 -0
  31. package/dist/chart/format-pane-common.d.ts +23 -0
  32. package/dist/chart/format-pane-common.d.ts.map +1 -0
  33. package/dist/{pptx/render/chart-format/chart-format-pane-effects.d.ts → chart/format-pane-effects.d.ts} +5 -11
  34. package/dist/chart/format-pane-effects.d.ts.map +1 -0
  35. package/dist/chart/format-pane-fields.d.ts +29 -0
  36. package/dist/chart/format-pane-fields.d.ts.map +1 -0
  37. package/dist/chart/format-pane-fill-kinds.d.ts +16 -0
  38. package/dist/chart/format-pane-fill-kinds.d.ts.map +1 -0
  39. package/dist/chart/format-pane-fill-line.d.ts +13 -0
  40. package/dist/chart/format-pane-fill-line.d.ts.map +1 -0
  41. package/dist/chart/format-pane-fixture.test-util.d.ts +3 -0
  42. package/dist/chart/format-pane-intent.d.ts +24 -0
  43. package/dist/chart/format-pane-intent.d.ts.map +1 -0
  44. package/dist/chart/format-pane-locales/de.d.ts +3 -0
  45. package/dist/chart/format-pane-locales/de.d.ts.map +1 -0
  46. package/dist/chart/format-pane-locales/en.d.ts +3 -0
  47. package/dist/chart/format-pane-locales/en.d.ts.map +1 -0
  48. package/dist/chart/format-pane-locales/es.d.ts +3 -0
  49. package/dist/chart/format-pane-locales/es.d.ts.map +1 -0
  50. package/dist/chart/format-pane-locales/fr.d.ts +3 -0
  51. package/dist/chart/format-pane-locales/fr.d.ts.map +1 -0
  52. package/dist/chart/format-pane-locales/index.d.ts +7 -0
  53. package/dist/chart/format-pane-locales/index.d.ts.map +1 -0
  54. package/dist/chart/format-pane-locales/zh-CN.d.ts +3 -0
  55. package/dist/chart/format-pane-locales/zh-CN.d.ts.map +1 -0
  56. package/dist/chart/format-pane-model.d.ts +23 -0
  57. package/dist/chart/format-pane-model.d.ts.map +1 -0
  58. package/dist/chart/format-pane-options.d.ts +14 -0
  59. package/dist/chart/format-pane-options.d.ts.map +1 -0
  60. package/dist/chart/format-pane-space.d.ts +21 -0
  61. package/dist/chart/format-pane-space.d.ts.map +1 -0
  62. package/dist/chart/format-pane-targets.d.ts +25 -0
  63. package/dist/chart/format-pane-targets.d.ts.map +1 -0
  64. package/dist/chart/format-pane-text.d.ts +7 -0
  65. package/dist/chart/format-pane-text.d.ts.map +1 -0
  66. package/dist/chart/format-pane-translate.d.ts +10 -0
  67. package/dist/chart/format-pane-translate.d.ts.map +1 -0
  68. package/dist/chart/format-pane-types.d.ts +118 -0
  69. package/dist/chart/format-pane-types.d.ts.map +1 -0
  70. package/dist/chart/format-pane-view.d.ts +212 -0
  71. package/dist/chart/format-pane-view.d.ts.map +1 -0
  72. package/dist/chart/format-pane.d.ts +128 -0
  73. package/dist/chart/format-pane.d.ts.map +1 -0
  74. package/dist/chart/gallery-tiles.d.ts +23 -0
  75. package/dist/chart/gallery-tiles.d.ts.map +1 -0
  76. package/dist/chart-format-locales.js +1 -0
  77. package/dist/chunk-CDAXY5KC.js +118 -0
  78. package/dist/chunk-FN7IF6M6.js +25 -0
  79. package/dist/{chunk-X5XR45BK.js → chunk-HGLCXNCT.js} +50 -24
  80. package/dist/chunk-KJMAVPQB.js +53 -0
  81. package/dist/{chunk-S736N64L.js → chunk-KSOHDEUI.js} +1 -1
  82. package/dist/chunk-NDUD5JJB.js +79 -0
  83. package/dist/chunk-P4FRKIPE.js +953 -0
  84. package/dist/chunk-VM6ZTKB3.js +1134 -0
  85. package/dist/{chunk-SC44SOIS.js → chunk-WDOWQKKC.js} +2601 -275
  86. package/dist/{chunk-5ZFOSFCK.js → chunk-WH3EGA3S.js} +9 -3
  87. package/dist/controls.d.ts +7 -2
  88. package/dist/controls.d.ts.map +1 -1
  89. package/dist/controls.js +3 -1
  90. package/dist/dialog/dialog.d.ts +6 -0
  91. package/dist/dialog/dialog.d.ts.map +1 -1
  92. package/dist/docx/chart-commands.d.ts +22 -0
  93. package/dist/docx/chart-design-ribbon.d.ts +4 -0
  94. package/dist/docx/chart-dialogs.d.ts +11 -0
  95. package/dist/docx/chart-format-pane.d.ts +22 -0
  96. package/dist/docx/context-menu-items.d.ts +2 -0
  97. package/dist/docx/editor-core.d.ts +3 -0
  98. package/dist/docx/format-dialogs.d.ts +4 -2
  99. package/dist/docx/image-media.d.ts +9 -1
  100. package/dist/docx/insert-controller.d.ts +5 -0
  101. package/dist/docx/locales/charts.d.ts +51 -0
  102. package/dist/docx/locales/en.d.ts +113 -0
  103. package/dist/docx/locales/smartart.d.ts +77 -0
  104. package/dist/docx/localization-strings.d.ts +113 -0
  105. package/dist/docx/resize-handle.d.ts +23 -0
  106. package/dist/docx/ribbon-action.d.ts +15 -0
  107. package/dist/docx/ribbon-icons.d.ts +13 -0
  108. package/dist/docx/smartart-commands.d.ts +26 -0
  109. package/dist/docx/smartart-controller.d.ts +35 -0
  110. package/dist/docx/smartart-design-ribbon.d.ts +7 -0
  111. package/dist/docx/smartart-dialog.d.ts +12 -0
  112. package/dist/docx/smartart-node-view.d.ts +6 -3
  113. package/dist/docx.js +1664 -542
  114. package/dist/form/color-grid.d.ts +8 -1
  115. package/dist/form/color-grid.d.ts.map +1 -1
  116. package/dist/index.d.ts +1 -1
  117. package/dist/index.js +10 -5
  118. package/dist/pptx/ai/bridge-factory.d.ts +77 -0
  119. package/dist/pptx/ai/bridge-factory.d.ts.map +1 -0
  120. package/dist/pptx/ai/index.cjs +443 -164
  121. package/dist/pptx/ai/index.d.ts +4 -0
  122. package/dist/pptx/ai/index.d.ts.map +1 -1
  123. package/dist/pptx/ai/index.mjs +437 -165
  124. package/dist/pptx/ai/panel-controller.d.ts +104 -0
  125. package/dist/pptx/ai/panel-controller.d.ts.map +1 -0
  126. package/dist/pptx/{chart-3d-view-scene-RYL7F65H.cjs → chart-3d-view-scene-N7UQOYFI.cjs} +38 -38
  127. package/dist/pptx/{chart-3d-view-scene-CDIMM5T3.mjs → chart-3d-view-scene-ZUGA3DKM.mjs} +2 -2
  128. package/dist/pptx/{chunk-PIIYTRLE.mjs → chunk-34LEUH5R.mjs} +1 -1
  129. package/dist/pptx/{chunk-G3UVZ5FO.cjs → chunk-6KLPQQYP.cjs} +1 -0
  130. package/dist/pptx/{chunk-SCURBCNQ.mjs → chunk-AMW2AR7J.mjs} +1 -1
  131. package/dist/pptx/chunk-CWHK7HF4.mjs +751 -0
  132. package/dist/pptx/{chunk-J642EKDV.cjs → chunk-FM4C4MBJ.cjs} +1 -1
  133. package/dist/pptx/{chunk-LCB46TH2.cjs → chunk-H5IPNKX6.cjs} +12 -12
  134. package/dist/pptx/{chunk-4TFSELNQ.cjs → chunk-HAO5PKWK.cjs} +7671 -4138
  135. package/dist/pptx/{chunk-QTLP3MX7.mjs → chunk-IWUIGVWT.mjs} +7468 -3993
  136. package/dist/pptx/{chunk-ZNXKAINY.mjs → chunk-LB3A3GF6.mjs} +1150 -222
  137. package/dist/pptx/chunk-LUDEAPHZ.cjs +776 -0
  138. package/dist/pptx/{chunk-A2X5BP7J.cjs → chunk-OOQMIQT3.cjs} +1151 -221
  139. package/dist/pptx/chunk-WM5SW737.mjs +27 -0
  140. package/dist/pptx/{chunk-73OUATE4.mjs → chunk-WQA3KZRB.mjs} +1 -1
  141. package/dist/pptx/chunk-Y6DO6SVT.cjs +29 -0
  142. package/dist/pptx/dom/index.cjs +503 -1123
  143. package/dist/pptx/dom/index.d.ts +1 -0
  144. package/dist/pptx/dom/index.d.ts.map +1 -1
  145. package/dist/pptx/dom/index.mjs +12 -704
  146. package/dist/pptx/dom/smartart-insert-preview.d.ts +15 -0
  147. package/dist/pptx/dom/smartart-insert-preview.d.ts.map +1 -0
  148. package/dist/pptx/export/html2canvas-clone.cjs +4 -4
  149. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  150. package/dist/pptx/i18n/index.cjs +6 -6
  151. package/dist/pptx/i18n/index.mjs +1 -1
  152. package/dist/pptx/i18n/translations-en-chart-format.d.ts.map +1 -1
  153. package/dist/pptx/i18n/translations-en-galleries.d.ts.map +1 -1
  154. package/dist/pptx/i18n/translations-en.d.ts.map +1 -1
  155. package/dist/pptx/index.cjs +3490 -3249
  156. package/dist/pptx/index.mjs +6 -5
  157. package/dist/pptx/render/autosave-inline-draft.d.ts +27 -0
  158. package/dist/pptx/render/autosave-inline-draft.d.ts.map +1 -0
  159. package/dist/pptx/render/autosave-policy.d.ts +6 -7
  160. package/dist/pptx/render/autosave-policy.d.ts.map +1 -1
  161. package/dist/pptx/render/autosave-tick.d.ts +6 -0
  162. package/dist/pptx/render/autosave-tick.d.ts.map +1 -1
  163. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  164. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  165. package/dist/pptx/render/chart-format/chart-format-pane-edit.d.ts +10 -2
  166. package/dist/pptx/render/chart-format/chart-format-pane-edit.d.ts.map +1 -1
  167. package/dist/pptx/render/chart-format/chart-format-pane-model.d.ts +4 -2
  168. package/dist/pptx/render/chart-format/chart-format-pane-model.d.ts.map +1 -1
  169. package/dist/pptx/render/chart-format/chart-format-pane-types.d.ts +4 -91
  170. package/dist/pptx/render/chart-format/chart-format-pane-types.d.ts.map +1 -1
  171. package/dist/pptx/render/chart-format/chart-format-source.d.ts +14 -0
  172. package/dist/pptx/render/chart-format/chart-format-source.d.ts.map +1 -0
  173. package/dist/pptx/render/chart-format/chart-format-targets.d.ts +16 -19
  174. package/dist/pptx/render/chart-format/chart-format-targets.d.ts.map +1 -1
  175. package/dist/pptx/render/chart-format/index.d.ts +2 -1
  176. package/dist/pptx/render/chart-format/index.d.ts.map +1 -1
  177. package/dist/pptx/render/chart-overlays.cjs +7 -7
  178. package/dist/pptx/render/chart-overlays.mjs +1 -1
  179. package/dist/pptx/render/chart-quick-action-styles.d.ts +4 -1
  180. package/dist/pptx/render/chart-quick-action-styles.d.ts.map +1 -1
  181. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  182. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  183. package/dist/pptx/render/chart-view-model.cjs +44 -44
  184. package/dist/pptx/render/chart-view-model.mjs +1 -1
  185. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  186. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  187. package/dist/pptx/render/collaboration-provider.d.ts +80 -0
  188. package/dist/pptx/render/collaboration-provider.d.ts.map +1 -0
  189. package/dist/pptx/render/collaboration-yjs-session.d.ts +48 -0
  190. package/dist/pptx/render/collaboration-yjs-session.d.ts.map +1 -0
  191. package/dist/pptx/render/controller/autosave-controller.d.ts +133 -0
  192. package/dist/pptx/render/controller/autosave-controller.d.ts.map +1 -0
  193. package/dist/pptx/render/controller/autosave-recovery-controller.d.ts +68 -0
  194. package/dist/pptx/render/controller/autosave-recovery-controller.d.ts.map +1 -0
  195. package/dist/pptx/render/controller/collaboration-session-controller.d.ts +89 -0
  196. package/dist/pptx/render/controller/collaboration-session-controller.d.ts.map +1 -0
  197. package/dist/pptx/render/controller/controller.d.ts +44 -0
  198. package/dist/pptx/render/controller/controller.d.ts.map +1 -0
  199. package/dist/pptx/render/controller/history-controller.d.ts +54 -0
  200. package/dist/pptx/render/controller/history-controller.d.ts.map +1 -0
  201. package/dist/pptx/render/controller/index.d.ts +17 -0
  202. package/dist/pptx/render/controller/index.d.ts.map +1 -0
  203. package/dist/pptx/render/customization/ribbon-control-catalog-tail.d.ts +2 -0
  204. package/dist/pptx/render/customization/ribbon-control-catalog-tail.d.ts.map +1 -1
  205. package/dist/pptx/render/customization/ribbon-control-catalog.d.ts +2 -0
  206. package/dist/pptx/render/customization/ribbon-control-catalog.d.ts.map +1 -1
  207. package/dist/pptx/render/editor-gesture-frames.d.ts +59 -0
  208. package/dist/pptx/render/editor-gesture-frames.d.ts.map +1 -0
  209. package/dist/pptx/render/editor-gestures.d.ts +39 -38
  210. package/dist/pptx/render/editor-gestures.d.ts.map +1 -1
  211. package/dist/pptx/render/editor-history.d.ts +1 -1
  212. package/dist/pptx/render/editor-history.d.ts.map +1 -1
  213. package/dist/pptx/render/editor-key-dispatch.d.ts +68 -0
  214. package/dist/pptx/render/editor-key-dispatch.d.ts.map +1 -0
  215. package/dist/pptx/render/effects-helpers.d.ts +8 -1
  216. package/dist/pptx/render/effects-helpers.d.ts.map +1 -1
  217. package/dist/pptx/render/effects-shadow-helpers.d.ts +7 -0
  218. package/dist/pptx/render/effects-shadow-helpers.d.ts.map +1 -1
  219. package/dist/pptx/render/group-press-target.d.ts +37 -0
  220. package/dist/pptx/render/group-press-target.d.ts.map +1 -0
  221. package/dist/pptx/render/index.d.ts +12 -0
  222. package/dist/pptx/render/index.d.ts.map +1 -1
  223. package/dist/pptx/render/insert-chart-preview.d.ts +15 -0
  224. package/dist/pptx/render/insert-chart-preview.d.ts.map +1 -0
  225. package/dist/pptx/render/insert-chart.d.ts +21 -1
  226. package/dist/pptx/render/insert-chart.d.ts.map +1 -1
  227. package/dist/pptx/render/inspector/element-geometry-fields.d.ts +28 -0
  228. package/dist/pptx/render/inspector/element-geometry-fields.d.ts.map +1 -0
  229. package/dist/pptx/render/inspector/index.d.ts +18 -0
  230. package/dist/pptx/render/inspector/index.d.ts.map +1 -0
  231. package/dist/pptx/render/inspector/inspector-field-model.d.ts +125 -0
  232. package/dist/pptx/render/inspector/inspector-field-model.d.ts.map +1 -0
  233. package/dist/pptx/render/inspector/shape-effect-fields-more.d.ts +8 -0
  234. package/dist/pptx/render/inspector/shape-effect-fields-more.d.ts.map +1 -0
  235. package/dist/pptx/render/inspector/shape-effect-fields.d.ts +27 -0
  236. package/dist/pptx/render/inspector/shape-effect-fields.d.ts.map +1 -0
  237. package/dist/pptx/render/inspector/shape-effect-sections.d.ts +7 -0
  238. package/dist/pptx/render/inspector/shape-effect-sections.d.ts.map +1 -0
  239. package/dist/pptx/render/inspector/shape-line-fields.d.ts +20 -0
  240. package/dist/pptx/render/inspector/shape-line-fields.d.ts.map +1 -0
  241. package/dist/pptx/render/inspector/text-box-fields.d.ts +24 -0
  242. package/dist/pptx/render/inspector/text-box-fields.d.ts.map +1 -0
  243. package/dist/pptx/render/options/viewer-options-apply.d.ts.map +1 -1
  244. package/dist/pptx/render/options/viewer-options.d.ts.map +1 -1
  245. package/dist/pptx/render/presentation-show-step.d.ts +105 -0
  246. package/dist/pptx/render/presentation-show-step.d.ts.map +1 -0
  247. package/dist/pptx/render/ribbon-galleries/chart-colors-gallery.d.ts +3 -2
  248. package/dist/pptx/render/ribbon-galleries/chart-colors-gallery.d.ts.map +1 -1
  249. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-gallery.d.ts +6 -3
  250. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-gallery.d.ts.map +1 -1
  251. package/dist/pptx/render/ribbon-galleries/chart-styles-gallery.d.ts +2 -1
  252. package/dist/pptx/render/ribbon-galleries/chart-styles-gallery.d.ts.map +1 -1
  253. package/dist/pptx/render/ribbon-galleries/gallery-placements.d.ts.map +1 -1
  254. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts +1 -1
  255. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts.map +1 -1
  256. package/dist/pptx/render/ribbon-galleries/smartart-colors-gallery.d.ts +0 -8
  257. package/dist/pptx/render/ribbon-galleries/smartart-colors-gallery.d.ts.map +1 -1
  258. package/dist/pptx/render/ribbon-galleries/smartart-commands.d.ts +1 -1
  259. package/dist/pptx/render/ribbon-galleries/smartart-commands.d.ts.map +1 -1
  260. package/dist/pptx/render/ribbon-galleries/smartart-gallery-patch.d.ts +4 -2
  261. package/dist/pptx/render/ribbon-galleries/smartart-gallery-patch.d.ts.map +1 -1
  262. package/dist/pptx/render/ribbon-galleries/smartart-gallery-tiles.d.ts +3 -8
  263. package/dist/pptx/render/ribbon-galleries/smartart-gallery-tiles.d.ts.map +1 -1
  264. package/dist/pptx/render/ribbon-galleries/smartart-layout-tiles.d.ts +7 -5
  265. package/dist/pptx/render/ribbon-galleries/smartart-layout-tiles.d.ts.map +1 -1
  266. package/dist/pptx/render/ribbon-galleries/smartart-layouts-gallery.d.ts.map +1 -1
  267. package/dist/pptx/render/ribbon-insert-state.d.ts +6 -0
  268. package/dist/pptx/render/ribbon-insert-state.d.ts.map +1 -1
  269. package/dist/pptx/render/smart-art-presets.d.ts +12 -6
  270. package/dist/pptx/render/smart-art-presets.d.ts.map +1 -1
  271. package/dist/pptx/render/smartart-text-pane-model.d.ts +59 -0
  272. package/dist/pptx/render/smartart-text-pane-model.d.ts.map +1 -0
  273. package/dist/pptx/render/span-snap-move.d.ts +32 -0
  274. package/dist/pptx/render/span-snap-move.d.ts.map +1 -0
  275. package/dist/pptx/render/theme-color-grid.d.ts +17 -0
  276. package/dist/pptx/render/theme-color-grid.d.ts.map +1 -1
  277. package/dist/pptx/render/viewer-event-payloads.d.ts +4 -4
  278. package/dist/pptx/smartart-insert-preview-5ZTZYAZR.cjs +48 -0
  279. package/dist/pptx/smartart-insert-preview-HMSNUWDO.mjs +39 -0
  280. package/dist/pptx/web-components/chart-data-sheet.d.ts +47 -0
  281. package/dist/pptx/web-components/chart-data-sheet.d.ts.map +1 -0
  282. package/dist/pptx/web-components/chart-format-pane.d.ts +7 -5
  283. package/dist/pptx/web-components/chart-format-pane.d.ts.map +1 -1
  284. package/dist/pptx/web-components/host-styles.d.ts.map +1 -1
  285. package/dist/pptx/web-components/index.d.ts +6 -0
  286. package/dist/pptx/web-components/index.d.ts.map +1 -1
  287. package/dist/pptx/web-components/insert-chart-dialog.d.ts +25 -0
  288. package/dist/pptx/web-components/insert-chart-dialog.d.ts.map +1 -0
  289. package/dist/pptx/web-components/insert-dialog-frame.d.ts +25 -0
  290. package/dist/pptx/web-components/insert-dialog-frame.d.ts.map +1 -0
  291. package/dist/pptx/web-components/insert-smartart-dialog.d.ts +26 -0
  292. package/dist/pptx/web-components/insert-smartart-dialog.d.ts.map +1 -0
  293. package/dist/pptx/web-components/mobile-insert.d.ts.map +1 -1
  294. package/dist/pptx/web-components/office-token-bridge.d.ts +1 -1
  295. package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
  296. package/dist/pptx/web-components/ribbon-insert-view.d.ts.map +1 -1
  297. package/dist/pptx/web-components/smartart-text-pane.d.ts +38 -0
  298. package/dist/pptx/web-components/smartart-text-pane.d.ts.map +1 -0
  299. package/dist/smartart/galleries.d.ts +17 -0
  300. package/dist/smartart/smartart-picker.d.ts +97 -0
  301. package/dist/smartart/smartart-picker.d.ts.map +1 -0
  302. package/dist/smartart/smartart-text-pane-tools.d.ts +51 -0
  303. package/dist/smartart/smartart-text-pane-tools.d.ts.map +1 -0
  304. package/dist/smartart/smartart-text-pane.d.ts +121 -0
  305. package/dist/smartart/smartart-text-pane.d.ts.map +1 -0
  306. package/dist/smartart/text-pane-controller.d.ts +51 -0
  307. package/dist/smartart/tiles.d.ts +17 -0
  308. package/dist/smartart/tiles.d.ts.map +1 -0
  309. package/dist/smartart.d.ts +5 -0
  310. package/dist/smartart.js +2 -1
  311. package/dist/teams/app/bind.d.ts +30 -0
  312. package/dist/teams/app/index.d.ts +1 -1
  313. package/dist/teams.js +7 -2
  314. package/dist/visio/ribbon-action.d.ts +5 -2
  315. package/dist/visio/viewer-chart-editor.d.ts +38 -0
  316. package/dist/visio/viewer-insert.d.ts +7 -2
  317. package/dist/visio.js +197 -17
  318. package/dist/xlsx/chart-format-pane.d.ts +10 -0
  319. package/dist/xlsx/chart-format-source.d.ts +17 -0
  320. package/dist/xlsx/commands/chart-design.d.ts +55 -0
  321. package/dist/xlsx/dialogs/insert-smartart.d.ts +4 -0
  322. package/dist/xlsx/grid/smartart.d.ts +4 -1
  323. package/dist/xlsx/ribbon/tabs/contextual.d.ts +6 -0
  324. package/dist/xlsx/smartart-controller.d.ts +14 -0
  325. package/dist/xlsx.js +789 -468
  326. package/package.json +47 -4
  327. package/dist/chunk-QBXYGKPB.js +0 -224
  328. package/dist/pptx/render/chart-format/chart-format-pane-3d.d.ts +0 -13
  329. package/dist/pptx/render/chart-format/chart-format-pane-3d.d.ts.map +0 -1
  330. package/dist/pptx/render/chart-format/chart-format-pane-axis.d.ts +0 -12
  331. package/dist/pptx/render/chart-format/chart-format-pane-axis.d.ts.map +0 -1
  332. package/dist/pptx/render/chart-format/chart-format-pane-common.d.ts +0 -14
  333. package/dist/pptx/render/chart-format/chart-format-pane-common.d.ts.map +0 -1
  334. package/dist/pptx/render/chart-format/chart-format-pane-effects.d.ts.map +0 -1
  335. package/dist/pptx/render/chart-format/chart-format-pane-fill-kinds.d.ts +0 -15
  336. package/dist/pptx/render/chart-format/chart-format-pane-fill-kinds.d.ts.map +0 -1
  337. package/dist/pptx/render/chart-format/chart-format-pane-fill-line.d.ts +0 -12
  338. package/dist/pptx/render/chart-format/chart-format-pane-fill-line.d.ts.map +0 -1
  339. package/dist/pptx/render/chart-format/chart-format-pane-options.d.ts +0 -13
  340. package/dist/pptx/render/chart-format/chart-format-pane-options.d.ts.map +0 -1
  341. package/dist/pptx/render/chart-format/chart-format-pane-text.d.ts +0 -14
  342. package/dist/pptx/render/chart-format/chart-format-pane-text.d.ts.map +0 -1
  343. package/dist/pptx/render/ribbon-galleries/chart-color-palette-catalog.d.ts +0 -3
  344. package/dist/pptx/render/ribbon-galleries/chart-color-palette-catalog.d.ts.map +0 -1
  345. package/dist/pptx/render/ribbon-galleries/chart-gallery-tiles.d.ts +0 -24
  346. package/dist/pptx/render/ribbon-galleries/chart-gallery-tiles.d.ts.map +0 -1
  347. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-catalog.d.ts +0 -22
  348. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-catalog.d.ts.map +0 -1
  349. package/dist/pptx/web-components/chart-format-pane-fields.d.ts +0 -17
  350. package/dist/pptx/web-components/chart-format-pane-fields.d.ts.map +0 -1
  351. package/dist/xlsx/chart-area-pane.d.ts +0 -9
  352. package/dist/xlsx/chart-series-pane.d.ts +0 -8
  353. package/dist/xlsx/commands/chart-colors.d.ts +0 -19
@@ -0,0 +1,776 @@
1
+ 'use strict';
2
+
3
+ var chunkHAO5PKWK_cjs = require('./chunk-HAO5PKWK.cjs');
4
+ var chunk6KLPQQYP_cjs = require('./chunk-6KLPQQYP.cjs');
5
+ var chunkFM4C4MBJ_cjs = require('./chunk-FM4C4MBJ.cjs');
6
+
7
+ // src/pptx/dom/dom.ts
8
+ function toCssPropertyName(key) {
9
+ return key.replace(/[A-Z]/gu, (c) => `-${c.toLowerCase()}`);
10
+ }
11
+ function applyStyleMap(el, style) {
12
+ for (const [key, value] of Object.entries(style)) {
13
+ if (value === void 0 || value === null) {
14
+ continue;
15
+ }
16
+ const property = key.startsWith("--") || key.includes("-") ? key : toCssPropertyName(key);
17
+ el.style.setProperty(property, String(value));
18
+ }
19
+ }
20
+ function createEl(doc, tag, className, style) {
21
+ const el = doc.createElement(tag);
22
+ if (className) {
23
+ el.className = className;
24
+ }
25
+ if (style) {
26
+ applyStyleMap(el, style);
27
+ }
28
+ return el;
29
+ }
30
+ var SVG_NS = "http://www.w3.org/2000/svg";
31
+ function createSvgEl(doc, tag, attrs) {
32
+ const el = doc.createElementNS(SVG_NS, tag);
33
+ if (attrs) {
34
+ setSvgAttrs(el, attrs);
35
+ }
36
+ return el;
37
+ }
38
+ function setSvgAttrs(el, attrs) {
39
+ for (const [name, value] of Object.entries(attrs)) {
40
+ if (value !== void 0) {
41
+ el.setAttribute(name, String(value));
42
+ }
43
+ }
44
+ }
45
+ function composeTransforms(first, second) {
46
+ const a = first === void 0 ? "" : String(first);
47
+ const b = second === void 0 ? "" : String(second);
48
+ if (a && b) {
49
+ return `${a} ${b}`;
50
+ }
51
+ return a || b || void 0;
52
+ }
53
+
54
+ // src/pptx/dom/elements/three-view-reuse.ts
55
+ var pool = null;
56
+ function collectThreeViews(root) {
57
+ const views = /* @__PURE__ */ new Map();
58
+ for (const view of root.querySelectorAll(chunkFM4C4MBJ_cjs.THREE_VIEW_TAG)) {
59
+ if (view.spec && !views.has(view.spec)) {
60
+ views.set(view.spec, view);
61
+ }
62
+ }
63
+ return views;
64
+ }
65
+ function withReusableThreeViews(views, render) {
66
+ const previous = pool;
67
+ pool = views;
68
+ try {
69
+ return render();
70
+ } finally {
71
+ pool = previous;
72
+ }
73
+ }
74
+ function takeReusableThreeView(spec) {
75
+ const view = pool?.get(spec) ?? null;
76
+ if (view) {
77
+ pool?.delete(spec);
78
+ }
79
+ return view;
80
+ }
81
+
82
+ // src/pptx/dom/elements/three-view.ts
83
+ function rendering3DFlagsOf(context) {
84
+ return {
85
+ smartArt3D: context.smartArt3D,
86
+ surfaceChart3D: context.surfaceChart3D,
87
+ barChart3D: context.barChart3D,
88
+ lineChart3D: context.lineChart3D,
89
+ areaChart3D: context.areaChart3D,
90
+ pieChart3D: context.pieChart3D
91
+ };
92
+ }
93
+ function mountThreeViewInto(doc, wrapper, options) {
94
+ chunkFM4C4MBJ_cjs.defineThreeViewElement(doc.defaultView?.customElements);
95
+ const view = takeReusableThreeView(options.spec) ?? doc.createElement(chunkFM4C4MBJ_cjs.THREE_VIEW_TAG);
96
+ view.replaceChildren(...Array.from(wrapper.childNodes));
97
+ view.spec = options.spec;
98
+ view.interactive = options.interactive;
99
+ view.selectedPart = options.selectedPart ?? null;
100
+ view.textStyle = options.textStyle;
101
+ wrapper.appendChild(view);
102
+ return view;
103
+ }
104
+ function isChart3DEditable(element, context) {
105
+ return element.type === "chart" && Boolean(context.interactive) && Boolean(context.onChartPointChange) && Boolean(context.selectedElementIds?.has(element.id)) && chunkHAO5PKWK_cjs.canDrillDown(element);
106
+ }
107
+ function selectedChartPartOf(element, context) {
108
+ return context.chartPartSelection?.elementId === element.id ? context.chartPartSelection.part : null;
109
+ }
110
+ function wireChartThreeViewEvents(view, element, context, badgeHost) {
111
+ if (element.type !== "chart") {
112
+ return;
113
+ }
114
+ let badge = null;
115
+ const bridge = {
116
+ elementId: element.id,
117
+ chartData: element.chartData,
118
+ canSelect: isChart3DEditable(element, context),
119
+ selectedElementId: context.chartPartSelection?.elementId ?? null,
120
+ // There is no "clear chart part selection" hook: an empty-space click
121
+ // leaves the selection alone, exactly like the 2D chart.
122
+ setSelection: (selection) => {
123
+ if (selection) {
124
+ view.selectedPart = selection.part;
125
+ context.onChartPartSelect?.(element, selection.part);
126
+ }
127
+ },
128
+ setDragValue: (value) => {
129
+ if (value === null) {
130
+ badge?.remove();
131
+ badge = null;
132
+ return;
133
+ }
134
+ if (!badge) {
135
+ badge = badgeHost.ownerDocument.createElement("div");
136
+ badge.className = "pptxv-chart-drag-badge";
137
+ badgeHost.appendChild(badge);
138
+ }
139
+ badge.textContent = chunk6KLPQQYP_cjs.formatAxisValue(value);
140
+ },
141
+ commitChartData: (next) => context.onChartPointChange?.(element, next)
142
+ };
143
+ chartViewListeners.get(view)?.abort();
144
+ const listeners = new AbortController();
145
+ chartViewListeners.set(view, listeners);
146
+ view.addEventListener(
147
+ chunkHAO5PKWK_cjs.THREE_VIEW_EVENTS.select,
148
+ (event) => chunkHAO5PKWK_cjs.applyChart3DSelect(bridge, event.detail.part),
149
+ { signal: listeners.signal }
150
+ );
151
+ view.addEventListener(
152
+ chunkHAO5PKWK_cjs.THREE_VIEW_EVENTS.drag,
153
+ (event) => chunkHAO5PKWK_cjs.applyChart3DDrag(bridge, event.detail),
154
+ { signal: listeners.signal }
155
+ );
156
+ }
157
+ var chartViewListeners = /* @__PURE__ */ new WeakMap();
158
+ function applyThreeViewTextStyle(el, style) {
159
+ for (const view of el.querySelectorAll(chunkFM4C4MBJ_cjs.THREE_VIEW_TAG)) {
160
+ view.textStyle = style;
161
+ }
162
+ }
163
+
164
+ // src/pptx/dom/elements/smartart-3d.ts
165
+ var renderSmartArt3DElement = (element, zIndex, context) => {
166
+ const wrapper = renderSmartArtSvg(element, zIndex, context);
167
+ const spec = wrapper ? chunkHAO5PKWK_cjs.resolveSmartArtThreeViewSpec(element, context.smartArt3D) : null;
168
+ if (!wrapper || !spec) {
169
+ return wrapper;
170
+ }
171
+ mountThreeViewInto(context.document, wrapper, {
172
+ spec,
173
+ interactive: Boolean(context.interactive) && !context.presenting,
174
+ textStyle: context.presentationStates?.get(element.id)?.textStyle
175
+ });
176
+ if (context.onSmartArtNodeTextChange && context.interactive && !context.presenting) {
177
+ const layer = renderSmartArtSvg(chunkHAO5PKWK_cjs.elementInLocalFrame(element), 0, context);
178
+ if (layer) {
179
+ layer.classList.add("pptxv-smartart-3d-edit-layer");
180
+ layer.setAttribute(chunkHAO5PKWK_cjs.SMARTART_3D_EDIT_LAYER_ATTRIBUTE, "true");
181
+ chunkHAO5PKWK_cjs.stripEditLayerMarkers(layer);
182
+ layer.setAttribute("aria-hidden", "true");
183
+ Object.assign(layer.style, { position: "absolute", inset: "0", zIndex: "1" });
184
+ for (const svg of layer.querySelectorAll("svg")) {
185
+ svg.style.opacity = "0";
186
+ }
187
+ wrapper.appendChild(layer);
188
+ chunkHAO5PKWK_cjs.routeEditLayerPointerToNodes(layer);
189
+ }
190
+ }
191
+ return wrapper;
192
+ };
193
+
194
+ // src/pptx/dom/elements/smartart-editable.ts
195
+ var NODE_SELECTOR = "[data-smartart-node-id]";
196
+ function nodeTarget(target) {
197
+ return target instanceof Element ? target.closest(NODE_SELECTOR) : null;
198
+ }
199
+ function enableSmartArtEditing(chrome, element, context) {
200
+ const data = element.smartArtData;
201
+ if (!data || !context.onSmartArtNodeTextChange && !context.onSmartArtNodeFillChange || !chunkHAO5PKWK_cjs.canDrillDown(element)) {
202
+ return;
203
+ }
204
+ let editor = null;
205
+ let swatches = null;
206
+ let hideTimer;
207
+ const cancelHide = () => clearTimeout(hideTimer);
208
+ const ignoredHover = (event) => chrome.closest(`[${chunkHAO5PKWK_cjs.SMARTART_3D_EDIT_LAYER_ATTRIBUTE}]`) !== null && !chunkHAO5PKWK_cjs.isForwardedEditLayerEvent(event);
209
+ const closeEditor = (input = editor) => {
210
+ if (!input || input !== editor) {
211
+ return;
212
+ }
213
+ editor = null;
214
+ input.remove();
215
+ };
216
+ chrome.addEventListener("dblclick", (event) => {
217
+ const target = nodeTarget(event.target);
218
+ const nodeId = target?.dataset.smartartNodeId;
219
+ if (!target || !nodeId || !context.onSmartArtNodeTextChange) {
220
+ return;
221
+ }
222
+ event.stopPropagation();
223
+ const textNode = target.querySelector("text");
224
+ const textRect = textNode ? chunkHAO5PKWK_cjs.measureSvgViewportRect(textNode) : null;
225
+ const rect = textRect && textRect.width > 0 ? textRect : chunkHAO5PKWK_cjs.measureSvgViewportRect(target);
226
+ if (!rect) {
227
+ return;
228
+ }
229
+ closeEditor();
230
+ swatches?.remove();
231
+ const input = createEl(chrome.ownerDocument, "textarea", "pptxv-smartart-node-editor", {
232
+ position: "absolute",
233
+ left: `${rect.left - 4}px`,
234
+ top: `${rect.top - 4}px`,
235
+ width: `${Math.max(48, rect.width + 8)}px`,
236
+ height: `${Math.max(30, rect.height + 8)}px`,
237
+ zIndex: "12",
238
+ boxSizing: "border-box",
239
+ padding: "4px",
240
+ resize: "none",
241
+ border: "2px solid #60a5fa",
242
+ borderRadius: "4px",
243
+ outline: "none",
244
+ background: "rgba(255,255,255,0.96)",
245
+ color: "#111827",
246
+ textAlign: "center"
247
+ });
248
+ editor = input;
249
+ input.value = chunkHAO5PKWK_cjs.findSmartArtNodeText(data, nodeId) ?? "";
250
+ const commit = () => {
251
+ if (input !== editor) {
252
+ return;
253
+ }
254
+ const value = input.value;
255
+ closeEditor(input);
256
+ context.onSmartArtNodeTextChange?.(element, nodeId, value);
257
+ };
258
+ input.addEventListener("blur", commit, { once: true });
259
+ input.addEventListener("keydown", (keyEvent) => {
260
+ if (keyEvent.key === "Escape") {
261
+ keyEvent.preventDefault();
262
+ closeEditor(input);
263
+ } else if (keyEvent.key === "Enter" && !keyEvent.shiftKey) {
264
+ keyEvent.preventDefault();
265
+ commit();
266
+ }
267
+ });
268
+ input.addEventListener("pointerdown", (pointerEvent) => pointerEvent.stopPropagation());
269
+ chrome.appendChild(input);
270
+ input.focus();
271
+ input.select();
272
+ });
273
+ chrome.addEventListener("mouseover", (event) => {
274
+ if (ignoredHover(event)) {
275
+ return;
276
+ }
277
+ const target = nodeTarget(event.target);
278
+ const nodeId = target?.dataset.smartartNodeId;
279
+ if (!target || !nodeId || !context.onSmartArtNodeFillChange || editor) {
280
+ return;
281
+ }
282
+ cancelHide();
283
+ swatches?.remove();
284
+ const rect = chunkHAO5PKWK_cjs.measureSvgViewportRect(target);
285
+ if (!rect) {
286
+ return;
287
+ }
288
+ swatches = createEl(chrome.ownerDocument, "div", "pptxv-smartart-node-swatches", {
289
+ position: "absolute",
290
+ left: `${Math.max(0, rect.left)}px`,
291
+ top: `${Math.max(0, rect.top - 26)}px`,
292
+ zIndex: "11",
293
+ display: "flex",
294
+ gap: "4px",
295
+ padding: "4px",
296
+ border: "1px solid rgba(148,163,184,0.7)",
297
+ borderRadius: "6px",
298
+ background: "rgba(15,23,42,0.96)",
299
+ boxShadow: "0 4px 12px rgba(0,0,0,0.35)"
300
+ });
301
+ swatches.setAttribute("role", "group");
302
+ swatches.setAttribute("aria-label", context.t("pptx.smartArt.fillColor"));
303
+ for (const color of chunkHAO5PKWK_cjs.resolvePalette(data).slice(0, 6)) {
304
+ const button = createEl(chrome.ownerDocument, "button", "", {
305
+ width: "18px",
306
+ height: "18px",
307
+ padding: "0",
308
+ border: "1px solid rgba(255,255,255,0.8)",
309
+ borderRadius: "4px",
310
+ background: color,
311
+ cursor: "pointer"
312
+ });
313
+ button.type = "button";
314
+ button.setAttribute("data-pptx-compact", "");
315
+ button.setAttribute("aria-label", `${context.t("pptx.smartArt.fillColor")} ${color}`);
316
+ button.addEventListener("click", (clickEvent) => {
317
+ clickEvent.stopPropagation();
318
+ context.onSmartArtNodeFillChange?.(element, nodeId, color);
319
+ swatches?.remove();
320
+ swatches = null;
321
+ });
322
+ swatches.appendChild(button);
323
+ }
324
+ swatches.addEventListener("mouseenter", cancelHide);
325
+ swatches.addEventListener("mouseleave", () => {
326
+ swatches?.remove();
327
+ swatches = null;
328
+ });
329
+ chrome.appendChild(swatches);
330
+ });
331
+ chrome.addEventListener("mouseout", (event) => {
332
+ if (ignoredHover(event)) {
333
+ return;
334
+ }
335
+ const target = nodeTarget(event.target);
336
+ const to = event.relatedTarget;
337
+ if (!target || !swatches || to instanceof Node && (target.contains(to) || swatches.contains(to))) {
338
+ return;
339
+ }
340
+ cancelHide();
341
+ hideTimer = setTimeout(() => {
342
+ swatches?.remove();
343
+ swatches = null;
344
+ }, 150);
345
+ });
346
+ }
347
+
348
+ // src/pptx/dom/elements/smartart-svg.ts
349
+ function appendSvgTextLines(doc, parent, options) {
350
+ const textEl = createSvgEl(doc, "text", {
351
+ x: options.x,
352
+ "text-anchor": options.textAnchor ?? "middle",
353
+ "dominant-baseline": options.dominantBaseline ?? "central",
354
+ fill: options.fill,
355
+ "font-size": options.fontSize,
356
+ "font-family": options.fontFamily,
357
+ "font-weight": options.fontWeight,
358
+ "font-style": options.fontStyle
359
+ });
360
+ for (const line of options.lines) {
361
+ const tspan = createSvgEl(doc, "tspan", { x: options.x, y: line.y });
362
+ tspan.textContent = line.text;
363
+ textEl.appendChild(tspan);
364
+ }
365
+ parent.appendChild(textEl);
366
+ }
367
+ function buildSvgGradientDefs(doc, gradient) {
368
+ const defs = createSvgEl(doc, "defs");
369
+ const server = gradient.kind === "radial" ? createSvgEl(doc, "radialGradient", {
370
+ id: gradient.id,
371
+ cx: gradient.cx,
372
+ cy: gradient.cy,
373
+ r: gradient.r
374
+ }) : createSvgEl(doc, "linearGradient", {
375
+ id: gradient.id,
376
+ x1: gradient.x1,
377
+ y1: gradient.y1,
378
+ x2: gradient.x2,
379
+ y2: gradient.y2
380
+ });
381
+ for (const stop of gradient.stops) {
382
+ server.appendChild(
383
+ createSvgEl(doc, "stop", {
384
+ offset: stop.offset,
385
+ "stop-color": stop.color,
386
+ "stop-opacity": stop.opacity
387
+ })
388
+ );
389
+ }
390
+ defs.appendChild(server);
391
+ return defs;
392
+ }
393
+ var SMARTART_SVG_STYLE = "width:100%;height:100%;pointer-events:none;display:block";
394
+
395
+ // src/pptx/dom/elements/smartart-fallback.ts
396
+ function buildSmartArtFallbackSvg(doc, layout, a11yNodes = [], nodeIds = []) {
397
+ const svg = createSvgEl(doc, "svg", {
398
+ viewBox: layout.viewBox,
399
+ preserveAspectRatio: "xMidYMid meet",
400
+ "data-layout-family": layout.family
401
+ });
402
+ svg.setAttribute("class", "pptxv-smartart-svg");
403
+ svg.setAttribute("style", SMARTART_SVG_STYLE);
404
+ for (const conn of layout.connectors) {
405
+ const paint = chunkHAO5PKWK_cjs.smartArtConnectorPaint(conn);
406
+ svg.appendChild(
407
+ createSvgEl(doc, "path", {
408
+ d: paint.d,
409
+ fill: "none",
410
+ stroke: paint.stroke,
411
+ "stroke-width": paint.strokeWidth,
412
+ opacity: paint.opacity,
413
+ "stroke-dasharray": paint.dash
414
+ })
415
+ );
416
+ }
417
+ const labelsById = new Map(a11yNodes.map((node) => [node.id, node.label]));
418
+ for (const [index, node] of layout.nodes.entries()) {
419
+ const nodeId = nodeIds[index];
420
+ const label = nodeId ? labelsById.get(nodeId) : a11yNodes[index]?.label;
421
+ svg.appendChild(buildFallbackNode(doc, node, layout.shadowFilter, label, nodeId));
422
+ }
423
+ return svg;
424
+ }
425
+ function buildFallbackNode(doc, node, shadowFilter, a11yLabel, nodeId) {
426
+ const g = createSvgEl(doc, "g");
427
+ if (nodeId) {
428
+ g.dataset.smartartNodeId = nodeId;
429
+ g.style.pointerEvents = "auto";
430
+ g.style.cursor = "text";
431
+ }
432
+ if (a11yLabel) {
433
+ g.setAttribute("role", "img");
434
+ g.setAttribute("aria-label", a11yLabel);
435
+ const title = createSvgEl(doc, "title");
436
+ title.textContent = a11yLabel;
437
+ g.appendChild(title);
438
+ }
439
+ if (shadowFilter) {
440
+ g.style.filter = shadowFilter;
441
+ }
442
+ const paint = {
443
+ fill: node.fill,
444
+ stroke: node.stroke,
445
+ "stroke-width": node.strokeWidth,
446
+ opacity: node.opacity
447
+ };
448
+ if (node.kind === "circle") {
449
+ g.appendChild(createSvgEl(doc, "circle", { cx: node.cx, cy: node.cy, r: node.r, ...paint }));
450
+ } else if (node.kind === "polygon") {
451
+ g.appendChild(createSvgEl(doc, "polygon", { points: node.points, ...paint }));
452
+ } else {
453
+ g.appendChild(
454
+ createSvgEl(doc, "rect", {
455
+ x: node.x,
456
+ y: node.y,
457
+ width: node.width,
458
+ height: node.height,
459
+ rx: node.rx,
460
+ ...paint
461
+ })
462
+ );
463
+ }
464
+ const label = chunkHAO5PKWK_cjs.smartArtNodeLabel(node);
465
+ if (label.visible) {
466
+ appendSvgTextLines(doc, g, {
467
+ lines: label.lines,
468
+ x: label.x,
469
+ fill: label.fill,
470
+ fontSize: label.fontSize,
471
+ textAnchor: label.textAnchor,
472
+ dominantBaseline: label.dominantBaseline,
473
+ fontWeight: label.fontWeight,
474
+ fontStyle: label.fontStyle
475
+ });
476
+ }
477
+ return g;
478
+ }
479
+
480
+ // src/pptx/dom/elements/smartart.ts
481
+ var renderSmartArtElement = (element, zIndex, context) => {
482
+ if (element.type !== "smartArt") {
483
+ return null;
484
+ }
485
+ if (context.smartArt3D) {
486
+ return renderSmartArt3DElement(element, zIndex, context);
487
+ }
488
+ return renderSmartArtSvg(element, zIndex, context);
489
+ };
490
+ var renderSmartArtSvg = (element, zIndex, context) => {
491
+ if (element.type !== "smartArt") {
492
+ return null;
493
+ }
494
+ const doc = context.document;
495
+ const data = element.smartArtData;
496
+ const wrapper = createEl(
497
+ doc,
498
+ "div",
499
+ "pptxv-element pptxv-smartart",
500
+ chunkHAO5PKWK_cjs.getContainerStyle(element, zIndex)
501
+ );
502
+ wrapper.dataset.elementId = element.id;
503
+ wrapper.dataset.testid = `smartart-${data?.layout ?? "diagram"}`;
504
+ const chrome = createEl(doc, "div", "pptxv-smartart-chrome", chunkHAO5PKWK_cjs.buildChromeStyle(data?.chrome));
505
+ chrome.style.position = "relative";
506
+ wrapper.appendChild(chrome);
507
+ if (data) {
508
+ const a11y = chunkHAO5PKWK_cjs.buildSmartArtA11y(data);
509
+ chrome.setAttribute("role", "img");
510
+ chrome.setAttribute("aria-label", a11y.label);
511
+ }
512
+ const nodes = data?.nodes ?? [];
513
+ const drawingShapes = data?.drawingShapes ?? [];
514
+ const animationState = context.presentationStates?.get(element.id);
515
+ const { nodes: revealedNodesFull } = chunkHAO5PKWK_cjs.resolveRevealedSmartArtNodes(
516
+ nodes,
517
+ animationState,
518
+ data?.presLayoutVars
519
+ );
520
+ if (data && drawingShapes.length > 0) {
521
+ const revealedShapes = chunkHAO5PKWK_cjs.resolveRevealedDrawingShapes(drawingShapes, nodes, animationState);
522
+ chrome.appendChild(
523
+ buildDrawingShapesSvg(doc, element.id, data, chunkHAO5PKWK_cjs.buildSmartArtA11y(data).nodes, revealedShapes)
524
+ );
525
+ enableSmartArtEditing(chrome, element, context);
526
+ return wrapper;
527
+ }
528
+ if (data && nodes.length > 0) {
529
+ const revealedNodes = revealedNodesFull;
530
+ const layout = chunkHAO5PKWK_cjs.computeSmartArtElementLayout(
531
+ data,
532
+ revealedNodes,
533
+ { width: element.width, height: element.height },
534
+ chunkHAO5PKWK_cjs.resolvePalette(data),
535
+ data.style ?? "flat",
536
+ element.id
537
+ );
538
+ chrome.appendChild(
539
+ buildSmartArtFallbackSvg(
540
+ doc,
541
+ layout,
542
+ chunkHAO5PKWK_cjs.buildSmartArtA11y(data).nodes,
543
+ chunkHAO5PKWK_cjs.flattenNodes(revealedNodes).map((node) => node.id)
544
+ )
545
+ );
546
+ enableSmartArtEditing(chrome, element, context);
547
+ return wrapper;
548
+ }
549
+ const placeholder = createEl(doc, "div", "pptxv-smartart-placeholder", {
550
+ width: "100%",
551
+ height: "100%",
552
+ display: "flex",
553
+ alignItems: "center",
554
+ justifyContent: "center",
555
+ fontSize: "11px",
556
+ color: "rgba(255,255,255,0.8)",
557
+ pointerEvents: "none"
558
+ });
559
+ placeholder.textContent = context.t("pptx.smartArt.placeholder");
560
+ chrome.appendChild(placeholder);
561
+ return wrapper;
562
+ };
563
+ function buildDrawingShapesSvg(doc, elementId, data, a11yNodes, revealedShapes) {
564
+ const allShapes = data.drawingShapes ?? [];
565
+ const style = data.style ?? "flat";
566
+ const viewBox = chunkHAO5PKWK_cjs.computeDrawingViewBox(allShapes);
567
+ const rendered = chunkHAO5PKWK_cjs.projectDrawingShapes(
568
+ elementId,
569
+ revealedShapes,
570
+ viewBox,
571
+ chunkHAO5PKWK_cjs.resolvePalette(data),
572
+ style
573
+ );
574
+ const shadow = chunkHAO5PKWK_cjs.styleShadowFilter(style);
575
+ const labelsById = new Map(a11yNodes.map((node) => [node.id, node.label]));
576
+ const nodeIds = chunkHAO5PKWK_cjs.resolveRevealedDrawingShapeNodeIds(allShapes, revealedShapes, data.nodes);
577
+ const svg = createSvgEl(doc, "svg", {
578
+ viewBox: `0 0 ${viewBox.width} ${viewBox.height}`,
579
+ preserveAspectRatio: "xMidYMid meet"
580
+ });
581
+ svg.setAttribute("class", "pptxv-smartart-svg");
582
+ svg.setAttribute("style", SMARTART_SVG_STYLE);
583
+ for (const [index, shape] of rendered.entries()) {
584
+ const g = createSvgEl(doc, "g");
585
+ const nodeId = nodeIds[index];
586
+ if (nodeId) {
587
+ g.dataset.smartartNodeId = nodeId;
588
+ g.style.pointerEvents = "auto";
589
+ g.style.cursor = "text";
590
+ }
591
+ const label = nodeId ? labelsById.get(nodeId) : void 0;
592
+ if (label) {
593
+ g.setAttribute("role", "img");
594
+ g.setAttribute("aria-label", label);
595
+ const title = createSvgEl(doc, "title");
596
+ title.textContent = label;
597
+ g.appendChild(title);
598
+ }
599
+ if (shadow) {
600
+ g.style.filter = shadow;
601
+ }
602
+ if (shape.gradient) {
603
+ g.appendChild(buildSvgGradientDefs(doc, shape.gradient));
604
+ }
605
+ if (shape.kind === "image") {
606
+ const image = createSvgEl(doc, "image", {
607
+ x: shape.x,
608
+ y: shape.y,
609
+ width: shape.width,
610
+ height: shape.height,
611
+ preserveAspectRatio: "xMidYMid meet",
612
+ transform: shape.transform
613
+ });
614
+ image.setAttribute("href", shape.imageUrl ?? "");
615
+ g.appendChild(image);
616
+ } else if (shape.kind === "ellipse") {
617
+ g.appendChild(
618
+ createSvgEl(doc, "ellipse", {
619
+ cx: shape.cx,
620
+ cy: shape.cy,
621
+ rx: shape.width / 2,
622
+ ry: shape.height / 2,
623
+ fill: shape.fill,
624
+ "fill-opacity": shape.fillOpacity,
625
+ stroke: shape.stroke,
626
+ "stroke-width": shape.strokeWidth,
627
+ transform: shape.transform
628
+ })
629
+ );
630
+ } else if (shape.kind === "path") {
631
+ g.appendChild(
632
+ createSvgEl(doc, "path", {
633
+ d: shape.pathData,
634
+ fill: shape.fill,
635
+ "fill-opacity": shape.fillOpacity,
636
+ stroke: shape.stroke,
637
+ "stroke-width": shape.strokeWidth,
638
+ transform: shape.pathTransform
639
+ })
640
+ );
641
+ } else {
642
+ g.appendChild(
643
+ createSvgEl(doc, "rect", {
644
+ x: shape.x,
645
+ y: shape.y,
646
+ width: shape.width,
647
+ height: shape.height,
648
+ rx: shape.rx,
649
+ fill: shape.fill,
650
+ "fill-opacity": shape.fillOpacity,
651
+ stroke: shape.stroke,
652
+ "stroke-width": shape.strokeWidth,
653
+ transform: shape.transform
654
+ })
655
+ );
656
+ }
657
+ if (shape.textLines.length > 0) {
658
+ appendSvgTextLines(doc, g, {
659
+ lines: shape.textLines,
660
+ x: shape.textX,
661
+ fill: shape.fontColor,
662
+ fontSize: shape.fontSize,
663
+ fontFamily: shape.fontFamily,
664
+ fontWeight: shape.fontWeight,
665
+ fontStyle: shape.fontStyle
666
+ });
667
+ }
668
+ svg.appendChild(g);
669
+ }
670
+ return svg;
671
+ }
672
+
673
+ // src/pptx/dom/registry.ts
674
+ function createElementRendererRegistry() {
675
+ const renderers = /* @__PURE__ */ new Map();
676
+ let fallback = () => null;
677
+ return {
678
+ register(type, renderer) {
679
+ renderers.set(type, renderer);
680
+ },
681
+ unregister(type) {
682
+ renderers.delete(type);
683
+ },
684
+ get(type) {
685
+ return renderers.get(type);
686
+ },
687
+ has(type) {
688
+ return renderers.has(type);
689
+ },
690
+ setFallback(renderer) {
691
+ fallback = renderer;
692
+ },
693
+ resolve(type) {
694
+ return renderers.get(type) ?? fallback;
695
+ },
696
+ registeredTypes() {
697
+ return Array.from(renderers.keys()).sort();
698
+ }
699
+ };
700
+ }
701
+
702
+ // src/pptx/dom/smartart-insert-preview.ts
703
+ function buildSmartArtInsertPreview(doc, t, layout, size) {
704
+ const scale = Math.min(
705
+ size.width / chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_WIDTH,
706
+ size.height / chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_HEIGHT
707
+ );
708
+ const box = createEl(doc, "div", "pptxv-smartart-option-preview", {
709
+ width: `${Math.round(chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_WIDTH * scale)}px`,
710
+ height: `${Math.round(chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_HEIGHT * scale)}px`,
711
+ overflow: "hidden",
712
+ pointerEvents: "none",
713
+ position: "relative"
714
+ });
715
+ box.setAttribute("aria-hidden", "true");
716
+ const stage = createEl(doc, "div", void 0, {
717
+ width: `${chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_WIDTH}px`,
718
+ height: `${chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_HEIGHT}px`,
719
+ transform: `scale(${scale})`,
720
+ transformOrigin: "top left",
721
+ position: "relative"
722
+ });
723
+ box.appendChild(stage);
724
+ const element = chunkHAO5PKWK_cjs.buildSmartArtPreviewElement(layout);
725
+ const slide = {
726
+ id: "smartart-preview",
727
+ rId: "smartart-preview",
728
+ slideNumber: 1,
729
+ elements: [element]
730
+ };
731
+ const context = {
732
+ document: doc,
733
+ slide,
734
+ canvasSize: { width: chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_WIDTH, height: chunkHAO5PKWK_cjs.SMARTART_PREVIEW_ELEMENT_HEIGHT },
735
+ scale: 1,
736
+ mediaDataUrls: /* @__PURE__ */ new Map(),
737
+ t,
738
+ smartArt3D: false,
739
+ surfaceChart3D: false,
740
+ barChart3D: false,
741
+ lineChart3D: false,
742
+ areaChart3D: false,
743
+ pieChart3D: false,
744
+ presenting: false,
745
+ registry: createElementRendererRegistry(),
746
+ renderElement: () => null
747
+ };
748
+ const rendered = renderSmartArtSvg(element, 0, context);
749
+ if (rendered) stage.appendChild(rendered);
750
+ return box;
751
+ }
752
+
753
+ exports.SMARTART_SVG_STYLE = SMARTART_SVG_STYLE;
754
+ exports.appendSvgTextLines = appendSvgTextLines;
755
+ exports.applyStyleMap = applyStyleMap;
756
+ exports.applyThreeViewTextStyle = applyThreeViewTextStyle;
757
+ exports.buildSmartArtFallbackSvg = buildSmartArtFallbackSvg;
758
+ exports.buildSmartArtInsertPreview = buildSmartArtInsertPreview;
759
+ exports.buildSvgGradientDefs = buildSvgGradientDefs;
760
+ exports.collectThreeViews = collectThreeViews;
761
+ exports.composeTransforms = composeTransforms;
762
+ exports.createEl = createEl;
763
+ exports.createElementRendererRegistry = createElementRendererRegistry;
764
+ exports.createSvgEl = createSvgEl;
765
+ exports.enableSmartArtEditing = enableSmartArtEditing;
766
+ exports.isChart3DEditable = isChart3DEditable;
767
+ exports.mountThreeViewInto = mountThreeViewInto;
768
+ exports.renderSmartArt3DElement = renderSmartArt3DElement;
769
+ exports.renderSmartArtElement = renderSmartArtElement;
770
+ exports.renderSmartArtSvg = renderSmartArtSvg;
771
+ exports.rendering3DFlagsOf = rendering3DFlagsOf;
772
+ exports.selectedChartPartOf = selectedChartPartOf;
773
+ exports.setSvgAttrs = setSvgAttrs;
774
+ exports.takeReusableThreeView = takeReusableThreeView;
775
+ exports.wireChartThreeViewEvents = wireChartThreeViewEvents;
776
+ exports.withReusableThreeViews = withReusableThreeViews;