ooxml-ui 1.24.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 (365) hide show
  1. package/README.md +83 -19
  2. package/custom-elements.json +355 -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-4AARUBIF.js → chunk-HGLCXNCT.js} +50 -24
  80. package/dist/chunk-KJMAVPQB.js +53 -0
  81. package/dist/{chunk-A277D2OJ.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-DQEV4EMA.js → chunk-WDOWQKKC.js} +2722 -276
  86. package/dist/{chunk-Y67BTA5W.js → chunk-WH3EGA3S.js} +10 -3
  87. package/dist/controls.d.ts +9 -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/dialog/progress-dialog.d.ts +42 -0
  93. package/dist/dialog/progress-dialog.d.ts.map +1 -0
  94. package/dist/docx/chart-commands.d.ts +22 -0
  95. package/dist/docx/chart-design-ribbon.d.ts +4 -0
  96. package/dist/docx/chart-dialogs.d.ts +11 -0
  97. package/dist/docx/chart-format-pane.d.ts +22 -0
  98. package/dist/docx/context-menu-items.d.ts +2 -0
  99. package/dist/docx/editor-core.d.ts +3 -0
  100. package/dist/docx/format-dialogs.d.ts +4 -2
  101. package/dist/docx/image-media.d.ts +9 -1
  102. package/dist/docx/insert-controller.d.ts +5 -0
  103. package/dist/docx/locales/charts.d.ts +51 -0
  104. package/dist/docx/locales/en.d.ts +113 -0
  105. package/dist/docx/locales/smartart.d.ts +77 -0
  106. package/dist/docx/localization-strings.d.ts +113 -0
  107. package/dist/docx/resize-handle.d.ts +23 -0
  108. package/dist/docx/ribbon-action.d.ts +15 -0
  109. package/dist/docx/ribbon-icons.d.ts +13 -0
  110. package/dist/docx/smartart-commands.d.ts +26 -0
  111. package/dist/docx/smartart-controller.d.ts +35 -0
  112. package/dist/docx/smartart-design-ribbon.d.ts +7 -0
  113. package/dist/docx/smartart-dialog.d.ts +12 -0
  114. package/dist/docx/smartart-node-view.d.ts +6 -3
  115. package/dist/docx.js +1674 -546
  116. package/dist/form/color-grid.d.ts +8 -1
  117. package/dist/form/color-grid.d.ts.map +1 -1
  118. package/dist/index.d.ts +1 -1
  119. package/dist/index.js +10 -5
  120. package/dist/pptx/ai/bridge-factory.d.ts +77 -0
  121. package/dist/pptx/ai/bridge-factory.d.ts.map +1 -0
  122. package/dist/pptx/ai/index.cjs +443 -164
  123. package/dist/pptx/ai/index.d.ts +4 -0
  124. package/dist/pptx/ai/index.d.ts.map +1 -1
  125. package/dist/pptx/ai/index.mjs +437 -165
  126. package/dist/pptx/ai/panel-controller.d.ts +104 -0
  127. package/dist/pptx/ai/panel-controller.d.ts.map +1 -0
  128. package/dist/pptx/{chart-3d-view-scene-RYL7F65H.cjs → chart-3d-view-scene-N7UQOYFI.cjs} +38 -38
  129. package/dist/pptx/{chart-3d-view-scene-CDIMM5T3.mjs → chart-3d-view-scene-ZUGA3DKM.mjs} +2 -2
  130. package/dist/pptx/{chunk-PIIYTRLE.mjs → chunk-34LEUH5R.mjs} +1 -1
  131. package/dist/pptx/{chunk-G3UVZ5FO.cjs → chunk-6KLPQQYP.cjs} +1 -0
  132. package/dist/pptx/{chunk-B5FR65LB.mjs → chunk-AMW2AR7J.mjs} +48 -2
  133. package/dist/pptx/chunk-CWHK7HF4.mjs +751 -0
  134. package/dist/pptx/{chunk-ZO43VVWQ.cjs → chunk-FM4C4MBJ.cjs} +49 -1
  135. package/dist/pptx/{chunk-LCB46TH2.cjs → chunk-H5IPNKX6.cjs} +12 -12
  136. package/dist/pptx/{chunk-SQQJLXTZ.cjs → chunk-HAO5PKWK.cjs} +8048 -4240
  137. package/dist/pptx/{chunk-3UOENEK7.mjs → chunk-IWUIGVWT.mjs} +7836 -4095
  138. package/dist/pptx/{chunk-ZNXKAINY.mjs → chunk-LB3A3GF6.mjs} +1150 -222
  139. package/dist/pptx/chunk-LUDEAPHZ.cjs +776 -0
  140. package/dist/pptx/{chunk-A2X5BP7J.cjs → chunk-OOQMIQT3.cjs} +1151 -221
  141. package/dist/pptx/chunk-WM5SW737.mjs +27 -0
  142. package/dist/pptx/{chunk-73OUATE4.mjs → chunk-WQA3KZRB.mjs} +1 -1
  143. package/dist/pptx/chunk-Y6DO6SVT.cjs +29 -0
  144. package/dist/pptx/dom/index.cjs +503 -1123
  145. package/dist/pptx/dom/index.d.ts +1 -0
  146. package/dist/pptx/dom/index.d.ts.map +1 -1
  147. package/dist/pptx/dom/index.mjs +12 -704
  148. package/dist/pptx/dom/smartart-insert-preview.d.ts +15 -0
  149. package/dist/pptx/dom/smartart-insert-preview.d.ts.map +1 -0
  150. package/dist/pptx/export/html2canvas-clone.cjs +10 -2
  151. package/dist/pptx/export/html2canvas-clone.d.ts +24 -0
  152. package/dist/pptx/export/html2canvas-clone.d.ts.map +1 -1
  153. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  154. package/dist/pptx/i18n/index.cjs +6 -6
  155. package/dist/pptx/i18n/index.mjs +1 -1
  156. package/dist/pptx/i18n/translations-en-chart-format.d.ts.map +1 -1
  157. package/dist/pptx/i18n/translations-en-galleries.d.ts.map +1 -1
  158. package/dist/pptx/i18n/translations-en.d.ts.map +1 -1
  159. package/dist/pptx/index.cjs +3523 -3238
  160. package/dist/pptx/index.mjs +6 -5
  161. package/dist/pptx/render/autosave-inline-draft.d.ts +27 -0
  162. package/dist/pptx/render/autosave-inline-draft.d.ts.map +1 -0
  163. package/dist/pptx/render/autosave-policy.d.ts +6 -7
  164. package/dist/pptx/render/autosave-policy.d.ts.map +1 -1
  165. package/dist/pptx/render/autosave-tick.d.ts +6 -0
  166. package/dist/pptx/render/autosave-tick.d.ts.map +1 -1
  167. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  168. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  169. package/dist/pptx/render/chart-format/chart-format-pane-edit.d.ts +10 -2
  170. package/dist/pptx/render/chart-format/chart-format-pane-edit.d.ts.map +1 -1
  171. package/dist/pptx/render/chart-format/chart-format-pane-model.d.ts +4 -2
  172. package/dist/pptx/render/chart-format/chart-format-pane-model.d.ts.map +1 -1
  173. package/dist/pptx/render/chart-format/chart-format-pane-types.d.ts +4 -91
  174. package/dist/pptx/render/chart-format/chart-format-pane-types.d.ts.map +1 -1
  175. package/dist/pptx/render/chart-format/chart-format-source.d.ts +14 -0
  176. package/dist/pptx/render/chart-format/chart-format-source.d.ts.map +1 -0
  177. package/dist/pptx/render/chart-format/chart-format-targets.d.ts +16 -19
  178. package/dist/pptx/render/chart-format/chart-format-targets.d.ts.map +1 -1
  179. package/dist/pptx/render/chart-format/index.d.ts +2 -1
  180. package/dist/pptx/render/chart-format/index.d.ts.map +1 -1
  181. package/dist/pptx/render/chart-overlays.cjs +7 -7
  182. package/dist/pptx/render/chart-overlays.mjs +1 -1
  183. package/dist/pptx/render/chart-quick-action-styles.d.ts +4 -1
  184. package/dist/pptx/render/chart-quick-action-styles.d.ts.map +1 -1
  185. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  186. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  187. package/dist/pptx/render/chart-view-model.cjs +44 -44
  188. package/dist/pptx/render/chart-view-model.mjs +1 -1
  189. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  190. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  191. package/dist/pptx/render/collaboration-provider.d.ts +80 -0
  192. package/dist/pptx/render/collaboration-provider.d.ts.map +1 -0
  193. package/dist/pptx/render/collaboration-yjs-session.d.ts +48 -0
  194. package/dist/pptx/render/collaboration-yjs-session.d.ts.map +1 -0
  195. package/dist/pptx/render/controller/autosave-controller.d.ts +133 -0
  196. package/dist/pptx/render/controller/autosave-controller.d.ts.map +1 -0
  197. package/dist/pptx/render/controller/autosave-recovery-controller.d.ts +68 -0
  198. package/dist/pptx/render/controller/autosave-recovery-controller.d.ts.map +1 -0
  199. package/dist/pptx/render/controller/collaboration-session-controller.d.ts +89 -0
  200. package/dist/pptx/render/controller/collaboration-session-controller.d.ts.map +1 -0
  201. package/dist/pptx/render/controller/controller.d.ts +44 -0
  202. package/dist/pptx/render/controller/controller.d.ts.map +1 -0
  203. package/dist/pptx/render/controller/history-controller.d.ts +54 -0
  204. package/dist/pptx/render/controller/history-controller.d.ts.map +1 -0
  205. package/dist/pptx/render/controller/index.d.ts +17 -0
  206. package/dist/pptx/render/controller/index.d.ts.map +1 -0
  207. package/dist/pptx/render/customization/ribbon-control-catalog-tail.d.ts +2 -0
  208. package/dist/pptx/render/customization/ribbon-control-catalog-tail.d.ts.map +1 -1
  209. package/dist/pptx/render/customization/ribbon-control-catalog.d.ts +2 -0
  210. package/dist/pptx/render/customization/ribbon-control-catalog.d.ts.map +1 -1
  211. package/dist/pptx/render/editor-gesture-frames.d.ts +59 -0
  212. package/dist/pptx/render/editor-gesture-frames.d.ts.map +1 -0
  213. package/dist/pptx/render/editor-gestures.d.ts +39 -38
  214. package/dist/pptx/render/editor-gestures.d.ts.map +1 -1
  215. package/dist/pptx/render/editor-history.d.ts +1 -1
  216. package/dist/pptx/render/editor-history.d.ts.map +1 -1
  217. package/dist/pptx/render/editor-key-dispatch.d.ts +68 -0
  218. package/dist/pptx/render/editor-key-dispatch.d.ts.map +1 -0
  219. package/dist/pptx/render/effects-helpers.d.ts +8 -1
  220. package/dist/pptx/render/effects-helpers.d.ts.map +1 -1
  221. package/dist/pptx/render/effects-shadow-helpers.d.ts +7 -0
  222. package/dist/pptx/render/effects-shadow-helpers.d.ts.map +1 -1
  223. package/dist/pptx/render/export-progress.d.ts +12 -0
  224. package/dist/pptx/render/export-progress.d.ts.map +1 -1
  225. package/dist/pptx/render/group-press-target.d.ts +37 -0
  226. package/dist/pptx/render/group-press-target.d.ts.map +1 -0
  227. package/dist/pptx/render/index.d.ts +13 -0
  228. package/dist/pptx/render/index.d.ts.map +1 -1
  229. package/dist/pptx/render/insert-chart-preview.d.ts +15 -0
  230. package/dist/pptx/render/insert-chart-preview.d.ts.map +1 -0
  231. package/dist/pptx/render/insert-chart.d.ts +21 -1
  232. package/dist/pptx/render/insert-chart.d.ts.map +1 -1
  233. package/dist/pptx/render/inspector/element-geometry-fields.d.ts +28 -0
  234. package/dist/pptx/render/inspector/element-geometry-fields.d.ts.map +1 -0
  235. package/dist/pptx/render/inspector/index.d.ts +18 -0
  236. package/dist/pptx/render/inspector/index.d.ts.map +1 -0
  237. package/dist/pptx/render/inspector/inspector-field-model.d.ts +125 -0
  238. package/dist/pptx/render/inspector/inspector-field-model.d.ts.map +1 -0
  239. package/dist/pptx/render/inspector/shape-effect-fields-more.d.ts +8 -0
  240. package/dist/pptx/render/inspector/shape-effect-fields-more.d.ts.map +1 -0
  241. package/dist/pptx/render/inspector/shape-effect-fields.d.ts +27 -0
  242. package/dist/pptx/render/inspector/shape-effect-fields.d.ts.map +1 -0
  243. package/dist/pptx/render/inspector/shape-effect-sections.d.ts +7 -0
  244. package/dist/pptx/render/inspector/shape-effect-sections.d.ts.map +1 -0
  245. package/dist/pptx/render/inspector/shape-line-fields.d.ts +20 -0
  246. package/dist/pptx/render/inspector/shape-line-fields.d.ts.map +1 -0
  247. package/dist/pptx/render/inspector/text-box-fields.d.ts +24 -0
  248. package/dist/pptx/render/inspector/text-box-fields.d.ts.map +1 -0
  249. package/dist/pptx/render/options/viewer-options-apply.d.ts.map +1 -1
  250. package/dist/pptx/render/options/viewer-options.d.ts.map +1 -1
  251. package/dist/pptx/render/presentation-show-step.d.ts +105 -0
  252. package/dist/pptx/render/presentation-show-step.d.ts.map +1 -0
  253. package/dist/pptx/render/read-only-session.d.ts +120 -0
  254. package/dist/pptx/render/read-only-session.d.ts.map +1 -0
  255. package/dist/pptx/render/ribbon-galleries/chart-colors-gallery.d.ts +3 -2
  256. package/dist/pptx/render/ribbon-galleries/chart-colors-gallery.d.ts.map +1 -1
  257. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-gallery.d.ts +6 -3
  258. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-gallery.d.ts.map +1 -1
  259. package/dist/pptx/render/ribbon-galleries/chart-styles-gallery.d.ts +2 -1
  260. package/dist/pptx/render/ribbon-galleries/chart-styles-gallery.d.ts.map +1 -1
  261. package/dist/pptx/render/ribbon-galleries/gallery-placements.d.ts.map +1 -1
  262. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts +1 -1
  263. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts.map +1 -1
  264. package/dist/pptx/render/ribbon-galleries/smartart-colors-gallery.d.ts +0 -8
  265. package/dist/pptx/render/ribbon-galleries/smartart-colors-gallery.d.ts.map +1 -1
  266. package/dist/pptx/render/ribbon-galleries/smartart-commands.d.ts +1 -1
  267. package/dist/pptx/render/ribbon-galleries/smartart-commands.d.ts.map +1 -1
  268. package/dist/pptx/render/ribbon-galleries/smartart-gallery-patch.d.ts +4 -2
  269. package/dist/pptx/render/ribbon-galleries/smartart-gallery-patch.d.ts.map +1 -1
  270. package/dist/pptx/render/ribbon-galleries/smartart-gallery-tiles.d.ts +3 -8
  271. package/dist/pptx/render/ribbon-galleries/smartart-gallery-tiles.d.ts.map +1 -1
  272. package/dist/pptx/render/ribbon-galleries/smartart-layout-tiles.d.ts +7 -5
  273. package/dist/pptx/render/ribbon-galleries/smartart-layout-tiles.d.ts.map +1 -1
  274. package/dist/pptx/render/ribbon-galleries/smartart-layouts-gallery.d.ts.map +1 -1
  275. package/dist/pptx/render/ribbon-insert-state.d.ts +6 -0
  276. package/dist/pptx/render/ribbon-insert-state.d.ts.map +1 -1
  277. package/dist/pptx/render/smart-art-presets.d.ts +12 -6
  278. package/dist/pptx/render/smart-art-presets.d.ts.map +1 -1
  279. package/dist/pptx/render/smartart-text-pane-model.d.ts +59 -0
  280. package/dist/pptx/render/smartart-text-pane-model.d.ts.map +1 -0
  281. package/dist/pptx/render/span-snap-move.d.ts +32 -0
  282. package/dist/pptx/render/span-snap-move.d.ts.map +1 -0
  283. package/dist/pptx/render/theme-color-grid.d.ts +17 -0
  284. package/dist/pptx/render/theme-color-grid.d.ts.map +1 -1
  285. package/dist/pptx/render/viewer-event-payloads.d.ts +4 -4
  286. package/dist/pptx/smartart-insert-preview-5ZTZYAZR.cjs +48 -0
  287. package/dist/pptx/smartart-insert-preview-HMSNUWDO.mjs +39 -0
  288. package/dist/pptx/web-components/chart-data-sheet.d.ts +47 -0
  289. package/dist/pptx/web-components/chart-data-sheet.d.ts.map +1 -0
  290. package/dist/pptx/web-components/chart-format-pane.d.ts +7 -5
  291. package/dist/pptx/web-components/chart-format-pane.d.ts.map +1 -1
  292. package/dist/pptx/web-components/host-styles.d.ts.map +1 -1
  293. package/dist/pptx/web-components/index.d.ts +7 -0
  294. package/dist/pptx/web-components/index.d.ts.map +1 -1
  295. package/dist/pptx/web-components/insert-chart-dialog.d.ts +25 -0
  296. package/dist/pptx/web-components/insert-chart-dialog.d.ts.map +1 -0
  297. package/dist/pptx/web-components/insert-dialog-frame.d.ts +25 -0
  298. package/dist/pptx/web-components/insert-dialog-frame.d.ts.map +1 -0
  299. package/dist/pptx/web-components/insert-smartart-dialog.d.ts +26 -0
  300. package/dist/pptx/web-components/insert-smartart-dialog.d.ts.map +1 -0
  301. package/dist/pptx/web-components/mobile-insert.d.ts.map +1 -1
  302. package/dist/pptx/web-components/office-alias-types.d.ts +6 -1
  303. package/dist/pptx/web-components/office-alias-types.d.ts.map +1 -1
  304. package/dist/pptx/web-components/office-aliases.d.ts +5 -0
  305. package/dist/pptx/web-components/office-aliases.d.ts.map +1 -1
  306. package/dist/pptx/web-components/office-token-bridge.d.ts +1 -1
  307. package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
  308. package/dist/pptx/web-components/ribbon-insert-view.d.ts.map +1 -1
  309. package/dist/pptx/web-components/smartart-text-pane.d.ts +38 -0
  310. package/dist/pptx/web-components/smartart-text-pane.d.ts.map +1 -0
  311. package/dist/smartart/galleries.d.ts +17 -0
  312. package/dist/smartart/smartart-picker.d.ts +97 -0
  313. package/dist/smartart/smartart-picker.d.ts.map +1 -0
  314. package/dist/smartart/smartart-text-pane-tools.d.ts +51 -0
  315. package/dist/smartart/smartart-text-pane-tools.d.ts.map +1 -0
  316. package/dist/smartart/smartart-text-pane.d.ts +121 -0
  317. package/dist/smartart/smartart-text-pane.d.ts.map +1 -0
  318. package/dist/smartart/text-pane-controller.d.ts +51 -0
  319. package/dist/smartart/tiles.d.ts +17 -0
  320. package/dist/smartart/tiles.d.ts.map +1 -0
  321. package/dist/smartart.d.ts +5 -0
  322. package/dist/smartart.js +2 -1
  323. package/dist/teams/app/bind.d.ts +30 -0
  324. package/dist/teams/app/index.d.ts +1 -1
  325. package/dist/teams.js +7 -2
  326. package/dist/visio/ribbon-action.d.ts +5 -2
  327. package/dist/visio/viewer-chart-editor.d.ts +38 -0
  328. package/dist/visio/viewer-insert.d.ts +7 -2
  329. package/dist/visio.js +197 -17
  330. package/dist/xlsx/chart-format-pane.d.ts +10 -0
  331. package/dist/xlsx/chart-format-source.d.ts +17 -0
  332. package/dist/xlsx/commands/chart-design.d.ts +55 -0
  333. package/dist/xlsx/dialogs/insert-smartart.d.ts +4 -0
  334. package/dist/xlsx/grid/smartart.d.ts +4 -1
  335. package/dist/xlsx/ribbon/tabs/contextual.d.ts +6 -0
  336. package/dist/xlsx/smartart-controller.d.ts +14 -0
  337. package/dist/xlsx.js +789 -468
  338. package/package.json +47 -4
  339. package/dist/chunk-QBXYGKPB.js +0 -224
  340. package/dist/pptx/render/chart-format/chart-format-pane-3d.d.ts +0 -13
  341. package/dist/pptx/render/chart-format/chart-format-pane-3d.d.ts.map +0 -1
  342. package/dist/pptx/render/chart-format/chart-format-pane-axis.d.ts +0 -12
  343. package/dist/pptx/render/chart-format/chart-format-pane-axis.d.ts.map +0 -1
  344. package/dist/pptx/render/chart-format/chart-format-pane-common.d.ts +0 -14
  345. package/dist/pptx/render/chart-format/chart-format-pane-common.d.ts.map +0 -1
  346. package/dist/pptx/render/chart-format/chart-format-pane-effects.d.ts.map +0 -1
  347. package/dist/pptx/render/chart-format/chart-format-pane-fill-kinds.d.ts +0 -15
  348. package/dist/pptx/render/chart-format/chart-format-pane-fill-kinds.d.ts.map +0 -1
  349. package/dist/pptx/render/chart-format/chart-format-pane-fill-line.d.ts +0 -12
  350. package/dist/pptx/render/chart-format/chart-format-pane-fill-line.d.ts.map +0 -1
  351. package/dist/pptx/render/chart-format/chart-format-pane-options.d.ts +0 -13
  352. package/dist/pptx/render/chart-format/chart-format-pane-options.d.ts.map +0 -1
  353. package/dist/pptx/render/chart-format/chart-format-pane-text.d.ts +0 -14
  354. package/dist/pptx/render/chart-format/chart-format-pane-text.d.ts.map +0 -1
  355. package/dist/pptx/render/ribbon-galleries/chart-color-palette-catalog.d.ts +0 -3
  356. package/dist/pptx/render/ribbon-galleries/chart-color-palette-catalog.d.ts.map +0 -1
  357. package/dist/pptx/render/ribbon-galleries/chart-gallery-tiles.d.ts +0 -24
  358. package/dist/pptx/render/ribbon-galleries/chart-gallery-tiles.d.ts.map +0 -1
  359. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-catalog.d.ts +0 -22
  360. package/dist/pptx/render/ribbon-galleries/chart-quick-layout-catalog.d.ts.map +0 -1
  361. package/dist/pptx/web-components/chart-format-pane-fields.d.ts +0 -17
  362. package/dist/pptx/web-components/chart-format-pane-fields.d.ts.map +0 -1
  363. package/dist/xlsx/chart-area-pane.d.ts +0 -9
  364. package/dist/xlsx/chart-series-pane.d.ts +0 -8
  365. package/dist/xlsx/commands/chart-colors.d.ts +0 -19
package/dist/visio.js CHANGED
@@ -1,21 +1,24 @@
1
1
  import { trackPointerPan, ownsCaptureLoss } from './chunk-GSXOZCAN.js';
2
- import { syncRibbonAddIns, createHostBackstagePages, syncHostMenuChildren, tidyMenuSeparators } from './chunk-A277D2OJ.js';
3
- export { RIBBON_ADD_IN_EVENT } from './chunk-A277D2OJ.js';
2
+ import { syncRibbonAddIns, createHostBackstagePages, syncHostMenuChildren, tidyMenuSeparators } from './chunk-KSOHDEUI.js';
3
+ export { RIBBON_ADD_IN_EVENT } from './chunk-KSOHDEUI.js';
4
4
  import { themeBridge, installOfficeUiThemeFor, prepareOfficeUiBlock } from './chunk-T5ARELU2.js';
5
- import { personalizeSection, unavailableCategory, userInterfaceSection, attachKeyTips, registerControls, readOfficeProfile, sanitizeOfficeProfile, writeOfficeProfile, attachRibbonGroupOverflow, parseSvgPreview, defineChartPicker, commentInitials } from './chunk-DQEV4EMA.js';
5
+ import { personalizeSection, unavailableCategory, userInterfaceSection, attachKeyTips, registerControls, readOfficeProfile, sanitizeOfficeProfile, writeOfficeProfile, attachRibbonGroupOverflow, defineChartPicker, defineChartDataSheet, defineChartFormatPane, commentInitials } from './chunk-WDOWQKKC.js';
6
6
  import { getIcon, registerIcon } from './chunk-M6GF5ED2.js';
7
+ import './chunk-VM6ZTKB3.js';
7
8
  import { definePresence } from './chunk-YZH2QS7J.js';
9
+ import { parseSvgPreview } from './chunk-FN7IF6M6.js';
8
10
  import './chunk-QLHCGV4C.js';
9
11
  import './chunk-XL77FR4B.js';
10
12
  import { VISIO_CAPABILITY_COMMANDS, VISIO_TEXT_LANGUAGES, VISIO_BULLET_STYLES, FOREIGN_VECTOR_SCENE_LIMITS, EMPTY_TEXT_SEARCH, EMPTY_SELECTION, EMPTY_EDIT_STATE, assertViewableDocument, snapshotSelection, selectionKey, indexDocumentText, searchDocumentText, sameSelection, validateSearchQuery, MAX_INPUT_BYTES, DocumentHistory, snapshotEdits, visioWithContainerMembers, visioSelectionIsOnPage, visioDuplicateCommand, visioGroupCommand, visioUngroupCommand, visioContainerCommand, visioCalloutCommand, visioPasteCommand, visioTextOccurrenceSelection, ForeignVectorBudget, VISIO_IDENTITY_TRANSFORM, hasVisibleShapeContent, composeVisioTransform, VISIO_CAPABILITY_BACKSTAGE_PAGES, compatibilityNotes, compatibilityText, visioGradientInstances, visioRenderedGradientStopCount, inspectForeignVectorResource, copySnapshotScene, editErrorMessage, eventKeys, isEditCancellation, propertyKeys, VISIO_TEXT_REPLACE_LIMITS, visioTextReplaceOccurrences, visioTextReplacePlan, visioTextReplaceCommands, visioClipboardShape, TEXT_SEARCH_LIMITS, visioSizePositionCommand, visioSizePositionState, visioPageInsertCommand, visioQuarterTurnCommand, visioRotationShape, VISIO_INITIAL_PRESENCE, sanitizeVisioPresence, textSearchStatus, visioSvgStrokeStyle, visioLineDashLengths, visioStencilDropCommand, visioMovementShape, visioMoveCommands, visioMoveTargets, visioMarqueeBox, visioPageDragDelta, visioTextShape, visioTextDraftEdit, isVisioPathTool, visioPathDrawPlan, visioDrawPlan, visioDrawBounds, visioDrawIsLargeEnough, visioConnectorCreationCommand, visioResizeShape, visioResizeDrag, visioConnectorRouteOf, visioPageEditToDrawing, visioNudgeCommands, VISIO_DIAGRAM_RULE_SETS, visioArrangeCommands, visioChangeMasterTargets, visioChangeMasterCommand, visioChangeShapeRefusal, visioChangeShapeCommand, visioChangeCaseShape, visioChangeCaseCommand, visioTextBlockShape, visioTextBlockFrame, visioTextBlockEdit, visioOrderingShape, visioFormatTargetShape, visioFormattingShape, visioTextFormattingState, visioTextIndentCommand, visioTextFontStepCommand, visioFontFamilies, visioChartObjectInsertCommand, visioPictureInsertCommand, normalizeVisioHyperlinkAddress, visioFitToDrawingEdits, VISIO_PAPER_SIZES, visioPageSizePresetEdits, visioOrientationEdits, visioPageDecorationState, visioNewPageId, visioMatchingPaperSize, visioPageBreaks, visioRemoveDataGraphicEdits, visioDataGraphicFields, visioDataGraphicEdits, visioShapeDataRow, VISIO_DATA_GRAPHIC_FILL_ROW, visioColorRules, visioLegendEdits, visioTextDialogValues, visioTextDialogPatch, visioFormatPainterSnapshot, visioFormatPainterEdits, VISIO_FORMAT_PAINTER_LIMITS, visioConnectableShape, visioAddConnectionPointCommand, visioWithCalloutLeaders, visioWithDataGraphics, visioFillPatternTransform, visioRenderedGradientStops, visioStrokeGradient, visioMasterDropRefusal, visioMasterDropSize, visioFileMasterDropCommand, visioMasterDropCommand, visioDrawingPoint, visioMovePreviewTransform, visioMarqueeSelection, visioPathPreview, visioNearestConnectionPoint, VISIO_RESIZE_HANDLES, visioRotationPreviewTransform, visioStraightLineHandles, visioConnectorEndHandles, VISIO_LAYOUT_STYLES, visioShapeFormattingState, visioGlowKey, visioShapeEffectValues, visioReflectionKey, visioFollowTarget, visioPaperSize, visioKeepAutoSize, VISIO_RULER_DENSITY_CHOICES, VISIO_GRID_DENSITY_CHOICES, visioGridSteps, visioRulerGridValues, visioRulerDensityFactor, visioRulerGridEdits, checkVisioDiagram, visioShapeReport, visioShapeReportTable, visioShapeReportCsv, visioShapeReportText, visioSubprocessCommand, visioShapeDataText, VISIO_LAYOUT_LABELS, visioAutoAlignCommands, visioReLayoutCommands, visioLayerAssignState, visioNewLayerNames, visioLayerAssignCommands, VISIO_SELECT_TYPES, VISIO_SELECT_TYPE_LABELS, visioPageMasters, visioSelectByType, visioPasteTextCommand, visioSnapMoveDelta, visioPageGuides, visioAutoConnectShape, visioAutoConnectArrows, visioAutoConnectNeighbor, visioAutoConnectPlan, visioShapePageBox, VISIO_FIELD_CATEGORIES, visioTextAppendEdit, visioTextSource, visioTextBlockMatrix, VISIO_TEXT_BLOCK_HANDLES, visioShapeLocalPoint, visioTextBlockDrag, visioShapeFrame, visioMasterPreviewBox, visioConnectorMovePreviews, visioConnectorPreviewPath, visioGlueableShape, visioDataGraphicMarker, visioParseRange, visioDataTable, visioWorkbookGrid, visioGuideCreateCommand, visioGuideMoveCommand } from 'ooxml-core/visio/ui';
11
13
  export { TEXT_SEARCH_LIMITS, VISIO_CAPABILITY_IDS, compatibilityNotes, compatibilityText, demoDocument, eventKeys, propertyKeys } from 'ooxml-core/visio/ui';
12
14
  import { VISIO_VISIBILITY_LIMITS, VISIO_BASIC_STENCIL, VISIO_STENCILS, visioOutlineShape, VISIO_SNAP, VISIO_GLUE, VISIO_SHADOW_PRESETS, loadVisio, createVsdx, deserializeVisioClipboard, mergeVisioPages, getVisioPageLayers, resolveVisioPageVisibility, visioLineJumpPaths, VISIO_CLIPBOARD_MAX_CHARS, visioSnapGlue, VISIO_GLOW_TRANSPARENCY, VISIO_METADATA_TEXT_LIMIT, VISIO_PICTURE_MAX_BYTES, inspectVisioRasterImage, visioPageLayout, VISIO_BUILT_IN_THEMES, VISIO_CONNECTOR_ROUTES, visioFilledArrow, layoutVisioFilledArrowLine, visioOpenArrowPath, visioBuiltInStencil, visioBuiltInMaster, isVisioChangeShapeTarget, VISIO_CONTAINER_STYLES, VISIO_CALLOUT_STYLES, visioFallbackQuickStyle, VISIO_GLOW_SIZES, VISIO_SOFT_EDGE_SIZES, VISIO_REFLECTION_PRESETS, encodeBitmapEmf, VISIO_BACKGROUND_STYLES, visioBackgroundShapes, VISIO_BORDER_STYLES, visioBorderShapes, checkVisioAlternativeText, VISIO_SHAPE_DATA_TYPES, visioShapeDataRowName, VISIO_CLIPBOARD_MAGIC, visioThemeVariantColors, visioPageThemeColors, readVisioStencil, VISIO_QUICK_STYLE_COLORS, isVisioBuiltInThemeId, VISIO_SCALE_UNITS } from 'ooxml-core/visio';
13
- import { renderChartSvg } from 'ooxml-core/xlsx';
15
+ import { renderChartSvg, readEmbeddedChartSpace, writeEmbeddedChartSpace } from 'ooxml-core/xlsx';
14
16
  import { resolveRotateHandlePlacement, createRotationDrag, snapAngle } from 'ooxml-core/geometry';
15
17
  import { normalizeLocale, interpolate } from 'ooxml-core/i18n';
16
18
  import { isCapabilityEnabled, capabilityHiddenActions, recoveryStoreOf, FILE_COMMAND_EVENT, fileCommandDetail, saveToStorage, documentSaveMeta } from 'ooxml-core/embedding';
17
19
  import { createWriteBackScheduler, DEFAULT_WRITE_BACK_DEBOUNCE_MS, flushWriteBackOnPageClose, writeBackStateOf } from 'ooxml-core/collab';
18
20
  import { INSERT_CHART_TYPES, GROUPED_CHART_TYPES, gridChartSvg, gridChart, parseChartGrid, readEmbeddedChart, chartGridText, gridChartWorkbook } from 'ooxml-core/xlsx/ui';
21
+ import { applyChartSpaceDataSheetEdits, applyChartEditIntent, chartSpaceDataSheet, renderChartSpaceSvg } from 'ooxml-core/chart';
19
22
  import { pushRecentColor, normalizePaletteHex } from 'ooxml-core/color';
20
23
 
21
24
  function createWorkerEditor(factory, timeoutMs = 2e4) {
@@ -3623,7 +3626,7 @@ var text_tool_default = ".viewport[data-tool='text'] {\n cursor: text;\n touch-a
3623
3626
  var presentation_default = "/* Visio Presentation Mode: the page fitted on a dark backdrop, chrome-free, read only. */\n.presentation {\n position: fixed;\n inset: 0;\n z-index: 2147483000;\n display: grid;\n place-items: center;\n /* Visio presents on a dark backdrop in every theme. */\n background: #111;\n color: rgb(255 255 255 / 0.82);\n outline: none;\n cursor: default;\n}\n.presentation[hidden] {\n display: none;\n}\n.presentation:fullscreen {\n width: 100%;\n height: 100%;\n}\n.presentation-stage {\n position: absolute;\n inset: 2vmin;\n display: grid;\n place-items: center;\n container-type: size;\n}\n.presentation-stage > .paper {\n height: auto;\n max-width: 100%;\n max-height: 100%;\n margin: 0;\n box-shadow: none;\n}\n.presentation-bar {\n position: absolute;\n right: 12px;\n bottom: 12px;\n display: flex;\n align-items: center;\n gap: 2px;\n padding: 2px 4px;\n border-radius: 4px;\n background: rgb(0 0 0 / 0.45);\n font: 12px/1.4 var(--office-font-family, 'Segoe UI', system-ui, sans-serif);\n opacity: 0.35;\n transition: opacity 0.2s;\n}\n.presentation-bar:hover,\n.presentation-bar:focus-within {\n opacity: 1;\n}\n.presentation-bar button {\n display: inline-grid;\n place-items: center;\n width: 26px;\n height: 26px;\n padding: 0;\n border: 0;\n border-radius: 3px;\n background: transparent;\n color: inherit;\n cursor: pointer;\n}\n.presentation-bar button:hover:not(:disabled) {\n background: rgb(255 255 255 / 0.16);\n}\n.presentation-bar button:focus-visible {\n outline: 2px solid currentColor;\n outline-offset: -2px;\n}\n.presentation-bar button:disabled {\n opacity: 0.35;\n cursor: default;\n}\n.presentation-page {\n min-width: 6em;\n max-width: 40vw;\n padding: 0 6px;\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n@media (prefers-reduced-motion: reduce) {\n .presentation-bar {\n transition: none;\n }\n}\n";
3624
3627
 
3625
3628
  // raw-css:/home/runner/work/ooxml/ooxml/src/ui/src/visio/styles/insert.css?raw
3626
- var insert_default = ".link-dialog label,\n.alt-text-dialog label,\n.screen-tip-dialog label {\n display: grid;\n gap: 4px;\n min-width: min(360px, 80vw);\n margin: 0 0 12px;\n}\n.link-dialog input,\n.link-dialog select,\n.alt-text-dialog input,\n.alt-text-dialog textarea,\n.screen-tip-dialog input {\n box-sizing: border-box;\n width: 100%;\n padding: 6px;\n color: inherit;\n background: var(--_vv-surface);\n border: 1px solid var(--_vv-border);\n border-radius: 3px;\n font: inherit;\n}\n.alt-text-dialog textarea {\n resize: vertical;\n min-height: 90px;\n}\n.accessibility-dialog [aria-live] {\n max-height: 50vh;\n overflow: auto;\n}\n.accessibility-dialog [aria-live] > button {\n display: block;\n width: 100%;\n padding: 8px;\n text-align: left;\n color: inherit;\n background: var(--_vv-surface);\n border: 1px solid var(--_vv-border);\n font: inherit;\n cursor: pointer;\n}\n.link-dialog [role='alert'],\n.alt-text-dialog [role='alert'],\n.screen-tip-dialog [role='alert'] {\n margin: 0;\n color: var(--office-error, #b00020);\n}\n\n.chart-dialog {\n --office-dialog-width: min(640px, 94vw);\n --office-dialog-max-width: min(640px, 94vw);\n}\n.chart-dialog [role='alert'] {\n margin: 8px 0 0;\n color: var(--_vv-danger);\n}\n.chart-dialog [role='alert']:empty {\n display: none;\n}\n.chart-dialog .chart-note {\n margin: 8px 0 0;\n color: var(--_vv-muted);\n font-size: 12px;\n}\n";
3629
+ var insert_default = ".link-dialog label,\n.alt-text-dialog label,\n.screen-tip-dialog label {\n display: grid;\n gap: 4px;\n min-width: min(360px, 80vw);\n margin: 0 0 12px;\n}\n.link-dialog input,\n.link-dialog select,\n.alt-text-dialog input,\n.alt-text-dialog textarea,\n.screen-tip-dialog input {\n box-sizing: border-box;\n width: 100%;\n padding: 6px;\n color: inherit;\n background: var(--_vv-surface);\n border: 1px solid var(--_vv-border);\n border-radius: 3px;\n font: inherit;\n}\n.alt-text-dialog textarea {\n resize: vertical;\n min-height: 90px;\n}\n.accessibility-dialog [aria-live] {\n max-height: 50vh;\n overflow: auto;\n}\n.accessibility-dialog [aria-live] > button {\n display: block;\n width: 100%;\n padding: 8px;\n text-align: left;\n color: inherit;\n background: var(--_vv-surface);\n border: 1px solid var(--_vv-border);\n font: inherit;\n cursor: pointer;\n}\n.link-dialog [role='alert'],\n.alt-text-dialog [role='alert'],\n.screen-tip-dialog [role='alert'] {\n margin: 0;\n color: var(--office-error, #b00020);\n}\n\n.chart-dialog {\n --office-dialog-width: min(640px, 94vw);\n --office-dialog-max-width: min(640px, 94vw);\n}\n.chart-dialog [role='alert'] {\n margin: 8px 0 0;\n color: var(--_vv-danger);\n}\n.chart-dialog [role='alert']:empty {\n display: none;\n}\n.chart-dialog .chart-note {\n margin: 8px 0 0;\n color: var(--_vv-muted);\n font-size: 12px;\n}\n\n.chart-edit-dialog {\n --office-dialog-width: min(760px, 96vw);\n --office-dialog-max-width: min(760px, 96vw);\n}\n.chart-edit-body {\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n align-items: flex-start;\n}\n.chart-edit-body > office-ui-chart-data-sheet,\n.chart-edit-body > office-ui-chart-format-pane {\n flex: 1 1 320px;\n min-width: 0;\n max-height: 60vh;\n overflow: auto;\n}\n.chart-edit-body > [hidden] {\n display: none;\n}\n.chart-edit-preview {\n flex: 0 1 320px;\n border: 1px solid var(--office-border, #d0d0d0);\n background: #ffffff;\n}\n.chart-edit-preview svg {\n display: block;\n width: 100%;\n height: auto;\n}\n";
3627
3630
 
3628
3631
  // raw-css:/home/runner/work/ooxml/ooxml/src/ui/src/visio/styles/mini-toolbar.css?raw
3629
3632
  var mini_toolbar_default = ".mini-toolbar {\n position: fixed;\n z-index: 60;\n display: flex;\n align-items: center;\n gap: 2px;\n padding: 4px;\n color: var(--_vv-ink);\n background: var(--_vv-surface);\n border: 1px solid var(--_vv-border);\n border-radius: 4px;\n box-shadow: var(--_vv-shadow);\n}\n.mini-toolbar[hidden] {\n display: none;\n}\n";
@@ -13407,6 +13410,18 @@ function createContextMenus(doc) {
13407
13410
  icon: "pencil",
13408
13411
  action: { type: "reveal", panel: "edit", focusText: true }
13409
13412
  },
13413
+ {
13414
+ id: "ctx-chart-data",
13415
+ label: "Edit Data",
13416
+ icon: "grid",
13417
+ action: { type: "insert", item: "chart-data" }
13418
+ },
13419
+ {
13420
+ id: "ctx-chart-format",
13421
+ label: "Format Chart...",
13422
+ icon: "fill",
13423
+ action: { type: "insert", item: "chart-format" }
13424
+ },
13410
13425
  "-",
13411
13426
  {
13412
13427
  id: "ctx-group",
@@ -16775,6 +16790,151 @@ var InsertChartDialog = class {
16775
16790
  }
16776
16791
  }
16777
16792
  };
16793
+ var PREVIEW_WIDTH2 = 640;
16794
+ var LIVE = { width: 320, height: 200 };
16795
+ var HEADINGS = { data: "Edit Data", format: "Format Chart" };
16796
+ var ChartObjectEditor = class {
16797
+ dialog;
16798
+ sheet;
16799
+ pane;
16800
+ preview;
16801
+ error;
16802
+ #submit;
16803
+ #rasterize;
16804
+ #buttons = /* @__PURE__ */ new Map();
16805
+ #target;
16806
+ #bytes;
16807
+ #space;
16808
+ #theme;
16809
+ #busy = false;
16810
+ constructor(root, submit, rasterize = rasterizeSvg) {
16811
+ this.#submit = submit;
16812
+ this.#rasterize = rasterize;
16813
+ const doc = root.ownerDocument;
16814
+ const registry = doc.defaultView?.customElements;
16815
+ defineChartDataSheet(registry);
16816
+ defineChartFormatPane(registry);
16817
+ this.dialog = doc.createElement("office-ui-dialog");
16818
+ this.dialog.className = "chart-dialog chart-edit-dialog";
16819
+ this.sheet = doc.createElement("office-ui-chart-data-sheet");
16820
+ this.pane = doc.createElement("office-ui-chart-format-pane");
16821
+ this.preview = doc.createElement("div");
16822
+ this.preview.className = "chart-edit-preview";
16823
+ this.preview.setAttribute("role", "img");
16824
+ this.preview.setAttribute("aria-label", "Chart preview");
16825
+ const body = doc.createElement("div");
16826
+ body.className = "chart-edit-body";
16827
+ body.append(this.sheet, this.pane, this.preview);
16828
+ this.error = doc.createElement("p");
16829
+ this.error.setAttribute("role", "alert");
16830
+ this.dialog.append(body, this.error);
16831
+ for (const name of ["Cancel", "OK"]) {
16832
+ const button = doc.createElement("office-ui-button");
16833
+ button.slot = "footer";
16834
+ button.setAttribute("label", name);
16835
+ button.setAttribute("command", `chart-edit-${name.toLowerCase()}`);
16836
+ button.addEventListener("office-command", () => {
16837
+ if (button.disabled) return;
16838
+ if (name === "Cancel") this.dialog.close();
16839
+ else void this.#save();
16840
+ });
16841
+ this.#buttons.set(name, button);
16842
+ this.dialog.append(button);
16843
+ }
16844
+ this.sheet.addEventListener("office-chart-data-change", (event) => {
16845
+ const { edits } = event.detail;
16846
+ if (this.#space) this.#update(applyChartSpaceDataSheetEdits(this.#space, edits));
16847
+ });
16848
+ this.pane.addEventListener("office-chart-format-target", (event) => {
16849
+ this.pane.target = event.detail.target;
16850
+ });
16851
+ this.pane.addEventListener("office-chart-format-edit", (event) => {
16852
+ const { intent } = event.detail;
16853
+ if (!intent || !this.#space) return this.#update(this.#space);
16854
+ try {
16855
+ this.#update(applyChartEditIntent(this.#space, intent));
16856
+ this.error.textContent = "";
16857
+ } catch (error) {
16858
+ this.error.textContent = error instanceof Error ? error.message : String(error);
16859
+ this.#update(this.#space);
16860
+ }
16861
+ });
16862
+ this.pane.addEventListener("office-chart-format-close", () => this.dialog.close());
16863
+ root.append(this.dialog);
16864
+ }
16865
+ /** The edited chart part, while the editor is open. */
16866
+ get space() {
16867
+ return this.#space;
16868
+ }
16869
+ /** The chart being edited while the editor is open, so a host can close it if the shape goes. */
16870
+ get target() {
16871
+ return this.dialog.open ? this.#target : void 0;
16872
+ }
16873
+ /** Open `mode` for the chart object's workbook; false when the workbook holds no chart. */
16874
+ async open(mode, target, workbook) {
16875
+ const found = await readEmbeddedChartSpace(workbook);
16876
+ if (!found) return false;
16877
+ const scheme = found.scheme;
16878
+ this.#theme = { scheme: (name) => scheme[name] };
16879
+ this.#target = target;
16880
+ this.#bytes = workbook;
16881
+ this.pane.theme = this.#theme;
16882
+ this.pane.target = "chartArea";
16883
+ this.sheet.hidden = mode !== "data";
16884
+ this.pane.hidden = mode !== "format";
16885
+ this.dialog.dataset.mode = mode;
16886
+ this.dialog.setAttribute("heading", HEADINGS[mode]);
16887
+ this.error.textContent = "";
16888
+ this.#update(found.space);
16889
+ this.dialog.show();
16890
+ return true;
16891
+ }
16892
+ close() {
16893
+ this.dialog.close();
16894
+ }
16895
+ #update(space) {
16896
+ this.#space = space;
16897
+ if (!space) return;
16898
+ this.sheet.data = chartSpaceDataSheet(space);
16899
+ this.pane.chartSpace = space;
16900
+ const svg2 = parseSvgPreview(this.dialog.ownerDocument, renderChartSpaceSvg(space, LIVE));
16901
+ if (svg2) this.preview.replaceChildren(svg2);
16902
+ else this.preview.replaceChildren();
16903
+ }
16904
+ async #save() {
16905
+ const target = this.#target;
16906
+ const space = this.#space;
16907
+ const bytes = this.#bytes;
16908
+ if (this.#busy || !target || !space || !bytes) return;
16909
+ this.#busy = true;
16910
+ for (const button of this.#buttons.values()) button.disabled = true;
16911
+ try {
16912
+ const workbook = await writeEmbeddedChartSpace(bytes, space);
16913
+ const embedded = await readEmbeddedChart(workbook);
16914
+ if (!embedded) throw new Error("The chart could not be written.");
16915
+ const height = Math.min(
16916
+ 1600,
16917
+ Math.max(120, Math.round(PREVIEW_WIDTH2 * target.height / target.width))
16918
+ );
16919
+ const raster = await this.#rasterize(
16920
+ this.dialog.ownerDocument,
16921
+ renderChartSvg(embedded.view, PREVIEW_WIDTH2, height),
16922
+ PREVIEW_WIDTH2,
16923
+ height
16924
+ );
16925
+ await this.#submit(
16926
+ { workbook, preview: encodeBitmapEmf(raster.width, raster.height, raster.rgba) },
16927
+ target
16928
+ );
16929
+ this.dialog.close();
16930
+ } catch (error) {
16931
+ this.error.textContent = error instanceof Error ? error.message : "The chart was not saved.";
16932
+ } finally {
16933
+ this.#busy = false;
16934
+ for (const button of this.#buttons.values()) button.disabled = false;
16935
+ }
16936
+ }
16937
+ };
16778
16938
 
16779
16939
  // src/visio/viewer-insert.ts
16780
16940
  var ViewerInsert = class {
@@ -16808,6 +16968,7 @@ var ViewerInsert = class {
16808
16968
  (button) => void this.#applyLink(button)
16809
16969
  );
16810
16970
  this.chart = new InsertChartDialog(root, (data, target) => this.#saveChart(data, target));
16971
+ this.chartEditor = new ChartObjectEditor(root, (data, target) => this.#saveChart(data, target));
16811
16972
  this.tip = new InsertDialog(
16812
16973
  root,
16813
16974
  "screen-tip-dialog",
@@ -16825,6 +16986,7 @@ var ViewerInsert = class {
16825
16986
  link;
16826
16987
  tip;
16827
16988
  chart;
16989
+ chartEditor;
16828
16990
  #target;
16829
16991
  #editable(state) {
16830
16992
  return canEditDiagram(state) && !state.loading && !state.edit.busy;
@@ -16846,6 +17008,12 @@ var ViewerInsert = class {
16846
17008
  if (state.document?.pages[state.pageIndex]) this.chart.open();
16847
17009
  return;
16848
17010
  }
17011
+ if (item === "chart-data" || item === "chart-format") {
17012
+ const shape2 = this.#shape(state);
17013
+ if (!shape2?.embeddedObject || !this.editChart(shape2.id, item === "chart-data" ? "data" : "format"))
17014
+ this.announce("Select one chart to edit its data or format it.");
17015
+ return;
17016
+ }
16849
17017
  const shape = this.#shape(state);
16850
17018
  const page3 = state.document?.pages[state.pageIndex];
16851
17019
  if (!shape || !page3) {
@@ -16878,23 +17046,26 @@ var ViewerInsert = class {
16878
17046
  this.link.dialog.close();
16879
17047
  this.tip.dialog.close();
16880
17048
  this.chart.close();
17049
+ this.chartEditor.close();
16881
17050
  }
16882
- /** Open the editor for the embedded chart `shapeId` on this page; false if it is not one. */
16883
- editChart(shapeId) {
17051
+ /**
17052
+ * Open an editor for the embedded chart `shapeId` on this page: the chart dialog (type, title
17053
+ * and data grid, as a double-click does), Edit Data or Format Chart. False if it is not one.
17054
+ */
17055
+ editChart(shapeId, mode = "chart") {
16884
17056
  const state = this.controller.state;
16885
17057
  const page3 = state.document?.pages[state.pageIndex];
16886
17058
  const shape = page3 && embeddedChartShape(page3.shapes, shapeId);
16887
17059
  if (!page3 || !shape?.embeddedObject || !this.#editable(state)) return false;
16888
- void this.chart.edit(
16889
- {
16890
- pageId: page3.id,
16891
- shapeId,
16892
- width: shape.width,
16893
- height: shape.height,
16894
- generation: this.controller.documentGeneration
16895
- },
16896
- shape.embeddedObject.bytes
16897
- );
17060
+ const target = {
17061
+ pageId: page3.id,
17062
+ shapeId,
17063
+ width: shape.width,
17064
+ height: shape.height,
17065
+ generation: this.controller.documentGeneration
17066
+ };
17067
+ if (mode === "chart") void this.chart.edit(target, shape.embeddedObject.bytes);
17068
+ else void this.chartEditor.open(mode, target, shape.embeddedObject.bytes);
16898
17069
  return true;
16899
17070
  }
16900
17071
  /**
@@ -17066,6 +17237,13 @@ var ViewerInsert = class {
17066
17237
  chart.disabled = !editing || !page3;
17067
17238
  chart.title = editing ? "Insert a chart drawn from data you type or paste. Double-click it to edit." : "Open a .vsdx file to insert a chart.";
17068
17239
  }
17240
+ const chartShape = shape?.embeddedObject ? shape : void 0;
17241
+ for (const name of ["ctx-chart-data", "ctx-chart-format"]) {
17242
+ const control = button(name);
17243
+ if (!control) continue;
17244
+ control.disabled = !chartShape;
17245
+ control.hidden = !chartShape;
17246
+ }
17069
17247
  for (const [name, label] of [
17070
17248
  ["link", "Link (Ctrl+K)"],
17071
17249
  ["ctx-hyperlink", "Hyperlink (Ctrl+K)"],
@@ -17077,6 +17255,8 @@ var ViewerInsert = class {
17077
17255
  control.title = shape ? label : `${label}: select one shape on an editable drawing.`;
17078
17256
  }
17079
17257
  if (this.chart.dialog.open && (!canEditDiagram(state) || state.loading)) this.chart.close();
17258
+ if (this.chartEditor.dialog.open && (!canEditDiagram(state) || state.loading || this.chartEditor.target?.generation !== this.controller.documentGeneration))
17259
+ this.chartEditor.close();
17080
17260
  for (const dialog of [this.link, this.tip]) {
17081
17261
  if (!dialog.dialog.open) continue;
17082
17262
  if (!canEditDiagram(state) || state.loading || this.controller.documentGeneration !== this.#target?.generation)
@@ -0,0 +1,10 @@
1
+ import { type Command, type EditorContext } from 'ooxml-core/xlsx/ui';
2
+ import { type OfficeUiChartFormatPane } from '../chart/format-pane.js';
3
+ export declare function chartAreaCommand(): Command;
4
+ export declare function chartSeriesCommand(): Command;
5
+ export declare function createChartFormatPane(ctx: EditorContext): {
6
+ element: OfficeUiChartFormatPane;
7
+ refresh: () => void;
8
+ relocalize: () => void;
9
+ close: () => void;
10
+ };
@@ -0,0 +1,17 @@
1
+ import { type ChartObject, type Workbook } from 'ooxml-core/xlsx';
2
+ import type { ChartFormatTarget, ChartSpace } from 'ooxml-core/chart';
3
+ import type { DrawingColorTheme } from 'ooxml-core/drawingml';
4
+ import { type ChartFormatSource } from '../chart/format-pane-api.js';
5
+ /** The slot Excel's fill controls go into. */
6
+ export declare const XLSX_CHART_FILL_SLOT = "fill";
7
+ /** Whether the chart has series to format. */
8
+ export declare const formatsSeries: (chart: ChartObject) => boolean;
9
+ /** The workbook theme as the pane resolves scheme colours (`accent1`, `tx1`...). */
10
+ export declare function workbookChartTheme(workbook: Workbook): DrawingColorTheme;
11
+ /** Whether Excel's own fill controls format `target`. */
12
+ export declare const xlsxFillsTarget: (target: ChartFormatTarget) => boolean;
13
+ /**
14
+ * The Format pane source of `chart` (whose model is `space`) with `target` selected: Excel's fill
15
+ * controls take the Fill section of the elements they edit.
16
+ */
17
+ export declare function xlsxChartFormatSource(chart: ChartObject, space: ChartSpace, theme: DrawingColorTheme, target: ChartFormatTarget | undefined): ChartFormatSource;
@@ -0,0 +1,55 @@
1
+ import { type EditorContext } from 'ooxml-core/xlsx/ui';
2
+ export declare function chartColorGallerySections(ctx: EditorContext): {
3
+ title?: string;
4
+ columns: number;
5
+ tileWidth: number;
6
+ tileHeight: number;
7
+ items: {
8
+ id: string;
9
+ label: string;
10
+ preview: string;
11
+ applied: boolean;
12
+ }[];
13
+ }[];
14
+ export declare const chartColorGalleryItems: (ctx: EditorContext) => {
15
+ id: string;
16
+ label: string;
17
+ preview: string;
18
+ applied: boolean;
19
+ }[];
20
+ export declare function chartStyleGallerySections(ctx: EditorContext): {
21
+ title?: string;
22
+ columns: number;
23
+ tileWidth: number;
24
+ tileHeight: number;
25
+ items: {
26
+ id: string;
27
+ label: string;
28
+ preview: string;
29
+ applied: boolean;
30
+ }[];
31
+ }[];
32
+ export declare const chartStyleGalleryItems: (ctx: EditorContext) => {
33
+ id: string;
34
+ label: string;
35
+ preview: string;
36
+ applied: boolean;
37
+ }[];
38
+ export declare function chartQuickLayoutGallerySections(ctx: EditorContext): {
39
+ title?: string;
40
+ columns: number;
41
+ tileWidth: number;
42
+ tileHeight: number;
43
+ items: {
44
+ id: string;
45
+ label: string;
46
+ preview: string;
47
+ applied: boolean;
48
+ }[];
49
+ }[];
50
+ export declare const chartQuickLayoutGalleryItems: (ctx: EditorContext) => {
51
+ id: string;
52
+ label: string;
53
+ preview: string;
54
+ applied: boolean;
55
+ }[];
@@ -0,0 +1,4 @@
1
+ import { type DiagramInsertPreset } from 'ooxml-core/diagram';
2
+ import type { EditorContext } from 'ooxml-core/xlsx/ui';
3
+ /** Opens the picker; resolves with the chosen preset, or undefined when cancelled. */
4
+ export declare function chooseSmartArt(ctx: EditorContext): Promise<DiagramInsertPreset | undefined>;
@@ -7,4 +7,7 @@ export declare function smartArtSchemeColors(theme: ThemePalette | undefined): S
7
7
  * Paints a SmartArt frame into `node`. The shared SVG scales to the positioned frame,
8
8
  * following both zoom and drawing resize without clipping the original cached extent.
9
9
  */
10
- export declare function paintSmartArt(ctx: EditorContext, node: HTMLElement, obj: SmartArtObject, theme: ThemePalette | undefined): void;
10
+ export declare function paintSmartArt(ctx: EditorContext, node: HTMLElement, obj: SmartArtObject, theme: ThemePalette | undefined, size?: {
11
+ w: number;
12
+ h: number;
13
+ }): void;
@@ -4,4 +4,10 @@ export declare function tableDesignTab(): RibbonTab;
4
4
  export declare function slicerTab(): RibbonTab;
5
5
  /** Timeline: shown while a timeline is the selected object. */
6
6
  export declare function timelineTab(): RibbonTab;
7
+ /**
8
+ * SmartArt Design: shown while a SmartArt graphic is the selected object, with the same commands
9
+ * as Word's tab (the shared list of `ooxml-core/diagram`). SmartArt Styles and Change Colors are
10
+ * not offered: only one colour and one style definition ship with the core.
11
+ */
12
+ export declare function smartArtDesignTab(): RibbonTab;
7
13
  export declare function chartDesignTab(): RibbonTab;
@@ -0,0 +1,14 @@
1
+ import { type DiagramDesignCommandKey } from 'ooxml-core/diagram';
2
+ import { type Command, type EditorContext } from 'ooxml-core/xlsx/ui';
3
+ /** The command id of a SmartArt Design command (`smartart.addAfter`, ...). */
4
+ export declare const smartArtCommandId: (key: DiagramDesignCommandKey) => string;
5
+ /** Creates the editor's SmartArt controller; its text pane goes beside the grid. */
6
+ export declare function createSmartArtController(ctx: EditorContext): {
7
+ element: HTMLElement;
8
+ refresh: () => void;
9
+ relocalize: () => void;
10
+ /** A new workbook: the pane closes. */
11
+ reset: () => void;
12
+ };
13
+ /** The SmartArt Design commands and Insert > SmartArt. */
14
+ export declare function smartArtCommands(): Command[];