ooxml-ui 0.27.2 → 0.28.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 (424) hide show
  1. package/dist/chunk-A56QI2OA.js +57 -0
  2. package/dist/{chunk-LE4FTRWB.js → chunk-AJ2J734X.js} +619 -3
  3. package/dist/{chunk-4PBFBPOH.js → chunk-G4ZGQYBH.js} +2 -1
  4. package/dist/controls.js +1 -1
  5. package/dist/docx/backstage-home.d.ts +3 -0
  6. package/dist/docx/backstage-options.d.ts +13 -0
  7. package/dist/docx/backstage-pages.d.ts +41 -0
  8. package/dist/docx/backstage.d.ts +18 -0
  9. package/dist/docx/binding-labels.d.ts +9 -0
  10. package/dist/docx/bookmark-commands.d.ts +20 -0
  11. package/dist/docx/bookmark-dialog.d.ts +4 -0
  12. package/dist/docx/borders-dialog.d.ts +4 -0
  13. package/dist/docx/canvas-measurer.d.ts +7 -0
  14. package/dist/docx/caption-commands.d.ts +31 -0
  15. package/dist/docx/caption-dialog.d.ts +5 -0
  16. package/dist/docx/change-case.d.ts +5 -0
  17. package/dist/docx/character-style-picker.d.ts +12 -0
  18. package/dist/docx/chrome-icons.d.ts +25 -0
  19. package/dist/docx/collaboration-model.d.ts +4 -0
  20. package/dist/docx/collaboration-session.d.ts +18 -0
  21. package/dist/docx/columns-dialog.d.ts +10 -0
  22. package/dist/docx/comment-commands.d.ts +21 -0
  23. package/dist/docx/comments-panel.d.ts +19 -0
  24. package/dist/docx/component.d.ts +70 -0
  25. package/dist/docx/context-menu-actions.d.ts +10 -0
  26. package/dist/docx/context-menu-items.d.ts +36 -0
  27. package/dist/docx/context-menu.d.ts +25 -0
  28. package/dist/docx/contextual-tabs.d.ts +8 -0
  29. package/dist/docx/cover-page.d.ts +14 -0
  30. package/dist/docx/cross-reference-commands.d.ts +30 -0
  31. package/dist/docx/cross-reference-dialog.d.ts +5 -0
  32. package/dist/docx/dialog-fields.d.ts +22 -0
  33. package/dist/docx/dialog-shell.d.ts +19 -0
  34. package/dist/docx/drop-cap-command.d.ts +20 -0
  35. package/dist/docx/drop-cap-dialog.d.ts +4 -0
  36. package/dist/docx/editor-attributes.d.ts +26 -0
  37. package/dist/docx/editor-chrome.d.ts +59 -0
  38. package/dist/docx/editor-commands.d.ts +7 -0
  39. package/dist/docx/editor-controls.d.ts +10 -0
  40. package/dist/docx/editor-core.d.ts +78 -0
  41. package/dist/docx/editor-host.d.ts +19 -0
  42. package/dist/docx/editor-interactions.d.ts +2 -0
  43. package/dist/docx/editor-plugins.d.ts +16 -0
  44. package/dist/docx/editor-presence.d.ts +20 -0
  45. package/dist/docx/editor-render.d.ts +3 -0
  46. package/dist/docx/editor-shell.d.ts +11 -0
  47. package/dist/docx/element-api.d.ts +35 -0
  48. package/dist/docx/equation-schema.d.ts +4 -0
  49. package/dist/docx/events.d.ts +45 -0
  50. package/dist/docx/field-update.d.ts +16 -0
  51. package/dist/docx/file-commands.d.ts +15 -0
  52. package/dist/docx/focus-view.d.ts +3 -0
  53. package/dist/docx/font-advanced.d.ts +18 -0
  54. package/dist/docx/font-dialog-tabs.d.ts +8 -0
  55. package/dist/docx/font-dialog.d.ts +11 -0
  56. package/dist/docx/font-format-batch.d.ts +3 -0
  57. package/dist/docx/font-format.d.ts +38 -0
  58. package/dist/docx/font-step.d.ts +5 -0
  59. package/dist/docx/font-sync.d.ts +9 -0
  60. package/dist/docx/format-dialogs.d.ts +37 -0
  61. package/dist/docx/format-painter.d.ts +12 -0
  62. package/dist/docx/go-to-panel.d.ts +4 -0
  63. package/dist/docx/go-to.d.ts +23 -0
  64. package/dist/docx/hard-break-command.d.ts +3 -0
  65. package/dist/docx/header-footer-commands.d.ts +19 -0
  66. package/dist/docx/header-footer-editor.d.ts +40 -0
  67. package/dist/docx/header-footer-link.d.ts +6 -0
  68. package/dist/docx/header-footer-navigation.d.ts +6 -0
  69. package/dist/docx/header-footer-position.d.ts +3 -0
  70. package/dist/docx/header-footer-ribbon.d.ts +9 -0
  71. package/dist/docx/header-footer-view.d.ts +5 -0
  72. package/dist/docx/heading-commands.d.ts +11 -0
  73. package/dist/docx/heading-navigator.d.ts +33 -0
  74. package/dist/docx/image-media.d.ts +29 -0
  75. package/dist/docx/indent-commands.d.ts +9 -0
  76. package/dist/docx/index.d.ts +23 -0
  77. package/dist/docx/inline-commands.d.ts +4 -0
  78. package/dist/docx/insert-controller.d.ts +46 -0
  79. package/dist/docx/insert-text-commands.d.ts +8 -0
  80. package/dist/docx/keyboard.d.ts +68 -0
  81. package/dist/docx/line-number-dialog.d.ts +11 -0
  82. package/dist/docx/link-commands.d.ts +31 -0
  83. package/dist/docx/link-dialog.d.ts +15 -0
  84. package/dist/docx/list-commands.d.ts +35 -0
  85. package/dist/docx/list-marker-display.d.ts +8 -0
  86. package/dist/docx/locales/columns.d.ts +15 -0
  87. package/dist/docx/locales/de-app.d.ts +8 -0
  88. package/dist/docx/locales/de-ribbon.d.ts +8 -0
  89. package/dist/docx/locales/de.d.ts +2 -0
  90. package/dist/docx/locales/drop-cap.d.ts +10 -0
  91. package/dist/docx/locales/en-app.d.ts +247 -0
  92. package/dist/docx/locales/en-ribbon.d.ts +394 -0
  93. package/dist/docx/locales/en.d.ts +746 -0
  94. package/dist/docx/locales/es-app.d.ts +8 -0
  95. package/dist/docx/locales/es-ribbon.d.ts +8 -0
  96. package/dist/docx/locales/es.d.ts +2 -0
  97. package/dist/docx/locales/font-advanced.d.ts +14 -0
  98. package/dist/docx/locales/fr-app.d.ts +2 -0
  99. package/dist/docx/locales/fr-ribbon.d.ts +2 -0
  100. package/dist/docx/locales/fr.d.ts +2 -0
  101. package/dist/docx/locales/ligatures.d.ts +5 -0
  102. package/dist/docx/locales/line-numbers.d.ts +16 -0
  103. package/dist/docx/locales/multilevel-list.d.ts +5 -0
  104. package/dist/docx/locales/navigation.d.ts +13 -0
  105. package/dist/docx/locales/table-properties.d.ts +29 -0
  106. package/dist/docx/locales/zh-CN-app.d.ts +8 -0
  107. package/dist/docx/locales/zh-CN-ribbon.d.ts +8 -0
  108. package/dist/docx/locales/zh-CN.d.ts +2 -0
  109. package/dist/docx/localization-strings.d.ts +745 -0
  110. package/dist/docx/localization.d.ts +24 -0
  111. package/dist/docx/model-adapter.d.ts +6 -0
  112. package/dist/docx/multilevel-list-dialog.d.ts +5 -0
  113. package/dist/docx/multilingual-commands.d.ts +14 -0
  114. package/dist/docx/multilingual-ribbon.d.ts +6 -0
  115. package/dist/docx/note-commands.d.ts +17 -0
  116. package/dist/docx/note-editor.d.ts +10 -0
  117. package/dist/docx/notes-view.d.ts +3 -0
  118. package/dist/docx/page-borders-dialog.d.ts +16 -0
  119. package/dist/docx/page-break-command.d.ts +5 -0
  120. package/dist/docx/page-controller.d.ts +66 -0
  121. package/dist/docx/page-navigator.d.ts +64 -0
  122. package/dist/docx/page-setup-change.d.ts +7 -0
  123. package/dist/docx/page-setup-dialog.d.ts +12 -0
  124. package/dist/docx/page-sync.d.ts +22 -0
  125. package/dist/docx/paragraph-decoration.d.ts +29 -0
  126. package/dist/docx/paragraph-dialog.d.ts +5 -0
  127. package/dist/docx/paragraph-format.d.ts +37 -0
  128. package/dist/docx/paragraph-styles.d.ts +5 -0
  129. package/dist/docx/paragraph-toggle-sync.d.ts +8 -0
  130. package/dist/docx/parts-controller.d.ts +52 -0
  131. package/dist/docx/picture-commands.d.ts +35 -0
  132. package/dist/docx/picture-dialog.d.ts +11 -0
  133. package/dist/docx/presence-decorations.d.ts +6 -0
  134. package/dist/docx/presence.d.ts +63 -0
  135. package/dist/docx/preview-run-styles.d.ts +4 -0
  136. package/dist/docx/preview-scale-fonts.d.ts +3 -0
  137. package/dist/docx/print-fragment-hit.d.ts +7 -0
  138. package/dist/docx/print-header-footer.d.ts +28 -0
  139. package/dist/docx/print-layout-cursor.d.ts +9 -0
  140. package/dist/docx/print-layout-view.d.ts +38 -0
  141. package/dist/docx/print-layout.d.ts +32 -0
  142. package/dist/docx/print-line-numbers.d.ts +13 -0
  143. package/dist/docx/print-page-borders.d.ts +18 -0
  144. package/dist/docx/print-table.d.ts +8 -0
  145. package/dist/docx/read-aloud.d.ts +11 -0
  146. package/dist/docx/review-commands.d.ts +24 -0
  147. package/dist/docx/review-controller.d.ts +30 -0
  148. package/dist/docx/review-display.d.ts +11 -0
  149. package/dist/docx/review-ribbon.d.ts +2 -0
  150. package/dist/docx/ribbon-action.d.ts +183 -0
  151. package/dist/docx/ribbon-behavior.d.ts +7 -0
  152. package/dist/docx/ribbon-color-grid.d.ts +11 -0
  153. package/dist/docx/ribbon-combo.d.ts +23 -0
  154. package/dist/docx/ribbon-commands.d.ts +13 -0
  155. package/dist/docx/ribbon-controls.d.ts +4 -0
  156. package/dist/docx/ribbon-gallery-menu.d.ts +26 -0
  157. package/dist/docx/ribbon-home.d.ts +4 -0
  158. package/dist/docx/ribbon-icons.d.ts +126 -0
  159. package/dist/docx/ribbon-keytips.d.ts +11 -0
  160. package/dist/docx/ribbon-overflow.d.ts +3 -0
  161. package/dist/docx/ribbon-parts.d.ts +53 -0
  162. package/dist/docx/ribbon-popover.d.ts +16 -0
  163. package/dist/docx/ribbon-router.d.ts +4 -0
  164. package/dist/docx/ribbon-tab-api.d.ts +29 -0
  165. package/dist/docx/ribbon-tabs.d.ts +2 -0
  166. package/dist/docx/ribbon-visibility.d.ts +8 -0
  167. package/dist/docx/ribbon.d.ts +5 -0
  168. package/dist/docx/ruler-sync.d.ts +7 -0
  169. package/dist/docx/ruler.d.ts +36 -0
  170. package/dist/docx/run-adapter.d.ts +9 -0
  171. package/dist/docx/run-marks.d.ts +4 -0
  172. package/dist/docx/run-scale.d.ts +11 -0
  173. package/dist/docx/run-styles.d.ts +19 -0
  174. package/dist/docx/scaled-paragraph-breaks.d.ts +7 -0
  175. package/dist/docx/schema.d.ts +6 -0
  176. package/dist/docx/script-state.d.ts +4 -0
  177. package/dist/docx/search-controller.d.ts +32 -0
  178. package/dist/docx/search-panel.d.ts +14 -0
  179. package/dist/docx/section-commands.d.ts +14 -0
  180. package/dist/docx/shell-labels.d.ts +3 -0
  181. package/dist/docx/shortcut-help.d.ts +16 -0
  182. package/dist/docx/smartart-node-view.d.ts +26 -0
  183. package/dist/docx/sort-commands.d.ts +9 -0
  184. package/dist/docx/spelling.d.ts +6 -0
  185. package/dist/docx/status-bar.d.ts +23 -0
  186. package/dist/docx/style-gallery.d.ts +22 -0
  187. package/dist/docx/styles/index.d.ts +6 -0
  188. package/dist/docx/styles-group.d.ts +7 -0
  189. package/dist/docx/styles-pane.d.ts +15 -0
  190. package/dist/docx/styles-popover.d.ts +24 -0
  191. package/dist/docx/tab-stops-view.d.ts +8 -0
  192. package/dist/docx/table-border-commands.d.ts +51 -0
  193. package/dist/docx/table-cell-alignment-dialog.d.ts +8 -0
  194. package/dist/docx/table-cell-margins-dialog.d.ts +9 -0
  195. package/dist/docx/table-commands.d.ts +6 -0
  196. package/dist/docx/table-model-adapter.d.ts +15 -0
  197. package/dist/docx/table-picker.d.ts +10 -0
  198. package/dist/docx/table-properties-dialog.d.ts +3 -0
  199. package/dist/docx/table-properties.d.ts +28 -0
  200. package/dist/docx/table-shading.d.ts +6 -0
  201. package/dist/docx/test-support.d.ts +24 -0
  202. package/dist/docx/text-box-commands.d.ts +17 -0
  203. package/dist/docx/text-box-dialog.d.ts +4 -0
  204. package/dist/docx/title-bar.d.ts +25 -0
  205. package/dist/docx/toc-commands.d.ts +17 -0
  206. package/dist/docx/toggle-commands.d.ts +8 -0
  207. package/dist/docx/track-changes-mode.d.ts +20 -0
  208. package/dist/docx/view-options.d.ts +10 -0
  209. package/dist/docx/watermark-commands.d.ts +9 -0
  210. package/dist/docx/watermark-dialog.d.ts +11 -0
  211. package/dist/docx/word-count-panel.d.ts +12 -0
  212. package/dist/docx/zoom-dialog.d.ts +16 -0
  213. package/dist/docx.js +21371 -0
  214. package/dist/edit-worker.js +18 -0
  215. package/dist/index.js +4 -60
  216. package/dist/parse-worker.js +16 -0
  217. package/dist/teams/app/bind.d.ts +28 -0
  218. package/dist/teams/app/controller.d.ts +13 -0
  219. package/dist/teams/app/index.d.ts +6 -0
  220. package/dist/teams/app/storage.d.ts +11 -0
  221. package/dist/teams/app/store.d.ts +4 -0
  222. package/dist/teams/app/teams-app.d.ts +110 -0
  223. package/dist/teams/app/teams-settings.d.ts +34 -0
  224. package/dist/teams/index.d.ts +1 -0
  225. package/dist/teams.js +3 -1
  226. package/dist/visio/arrowheads.d.ts +3 -0
  227. package/dist/visio/backstage.d.ts +15 -0
  228. package/dist/visio/binding.d.ts +27 -0
  229. package/dist/visio/controller.d.ts +71 -0
  230. package/dist/visio/edit-worker.d.ts +1 -0
  231. package/dist/visio/export-svg.d.ts +25 -0
  232. package/dist/visio/index.d.ts +14 -0
  233. package/dist/visio/office-ui.d.ts +2 -0
  234. package/dist/visio/paragraph-layout.d.ts +18 -0
  235. package/dist/visio/parse-worker.d.ts +1 -0
  236. package/dist/visio/print-snapshot.d.ts +87 -0
  237. package/dist/visio/render-fill.d.ts +2 -0
  238. package/dist/visio/render-foreign-vector-shape.d.ts +4 -0
  239. package/dist/visio/render-foreign-vector.d.ts +3 -0
  240. package/dist/visio/render-image.d.ts +4 -0
  241. package/dist/visio/render-resources.d.ts +10 -0
  242. package/dist/visio/render-svg.d.ts +17 -0
  243. package/dist/visio/render-text.d.ts +4 -0
  244. package/dist/visio/ribbon-action.d.ts +41 -0
  245. package/dist/visio/ribbon-home-format.d.ts +2 -0
  246. package/dist/visio/ribbon-home.d.ts +6 -0
  247. package/dist/visio/ribbon-keytips.d.ts +2 -0
  248. package/dist/visio/ribbon-other-tabs.d.ts +12 -0
  249. package/dist/visio/ribbon-parts.d.ts +60 -0
  250. package/dist/visio/ribbon-router.d.ts +19 -0
  251. package/dist/visio/ribbon-view.d.ts +5 -0
  252. package/dist/visio/ribbon.d.ts +13 -0
  253. package/dist/visio/shape-inspector.d.ts +5 -0
  254. package/dist/visio/shapes-window.d.ts +28 -0
  255. package/dist/visio/status-bar.d.ts +10 -0
  256. package/dist/visio/styles/index.d.ts +5 -0
  257. package/dist/visio/styles.d.ts +2 -0
  258. package/dist/visio/text-layout.d.ts +45 -0
  259. package/dist/visio/viewer-backstage.d.ts +33 -0
  260. package/dist/visio/viewer-canvas.d.ts +21 -0
  261. package/dist/visio/viewer-chrome.d.ts +22 -0
  262. package/dist/visio/viewer-commands.d.ts +34 -0
  263. package/dist/visio/viewer-context-menu.d.ts +8 -0
  264. package/dist/visio/viewer-draw-tool.d.ts +33 -0
  265. package/dist/visio/viewer-edit-controls.d.ts +12 -0
  266. package/dist/visio/viewer-element.d.ts +51 -0
  267. package/dist/visio/viewer-fit.d.ts +6 -0
  268. package/dist/visio/viewer-geometry-controls.d.ts +14 -0
  269. package/dist/visio/viewer-input.d.ts +10 -0
  270. package/dist/visio/viewer-layer-controls.d.ts +5 -0
  271. package/dist/visio/viewer-layers.d.ts +22 -0
  272. package/dist/visio/viewer-options.d.ts +22 -0
  273. package/dist/visio/viewer-pan-zoom.d.ts +19 -0
  274. package/dist/visio/viewer-ruler.d.ts +13 -0
  275. package/dist/visio/viewer-search.d.ts +18 -0
  276. package/dist/visio/viewer-share.d.ts +20 -0
  277. package/dist/visio/viewer-stencil.d.ts +6 -0
  278. package/dist/visio/viewer-tell-me.d.ts +4 -0
  279. package/dist/visio/worker-editor.d.ts +23 -0
  280. package/dist/visio/worker-parser.d.ts +13 -0
  281. package/dist/visio.js +6618 -0
  282. package/dist/xlsx/backstage/index.d.ts +14 -0
  283. package/dist/xlsx/backstage/pages-file.d.ts +6 -0
  284. package/dist/xlsx/backstage/pages-info.d.ts +10 -0
  285. package/dist/xlsx/backstage/pages-options.d.ts +7 -0
  286. package/dist/xlsx/backstage/parts.d.ts +53 -0
  287. package/dist/xlsx/backstage/properties-custom.d.ts +4 -0
  288. package/dist/xlsx/clipboard.d.ts +26 -0
  289. package/dist/xlsx/commands/index.d.ts +11 -0
  290. package/dist/xlsx/commands/insert-now.d.ts +4 -0
  291. package/dist/xlsx/commands/insert.d.ts +7 -0
  292. package/dist/xlsx/commands/register-icons.d.ts +2 -0
  293. package/dist/xlsx/commands/review.d.ts +6 -0
  294. package/dist/xlsx/commands/styles.d.ts +17 -0
  295. package/dist/xlsx/commands/test-support.d.ts +25 -0
  296. package/dist/xlsx/commands/view.d.ts +7 -0
  297. package/dist/xlsx/component.d.ts +66 -0
  298. package/dist/xlsx/context-menu/index.d.ts +2 -0
  299. package/dist/xlsx/context-menu/menu.d.ts +14 -0
  300. package/dist/xlsx/dialogs/cell-shift.d.ts +5 -0
  301. package/dist/xlsx/dialogs/cf-common.d.ts +29 -0
  302. package/dist/xlsx/dialogs/cf-manager.d.ts +8 -0
  303. package/dist/xlsx/dialogs/cf-quick.d.ts +10 -0
  304. package/dist/xlsx/dialogs/cf-rule-panels.d.ts +20 -0
  305. package/dist/xlsx/dialogs/cf-rule-scale.d.ts +3 -0
  306. package/dist/xlsx/dialogs/cf-rule.d.ts +13 -0
  307. package/dist/xlsx/dialogs/comments-list.d.ts +2 -0
  308. package/dist/xlsx/dialogs/create-names.d.ts +8 -0
  309. package/dist/xlsx/dialogs/create-table.d.ts +6 -0
  310. package/dist/xlsx/dialogs/data-validation.d.ts +3 -0
  311. package/dist/xlsx/dialogs/define-name.d.ts +9 -0
  312. package/dist/xlsx/dialogs/fields.d.ts +47 -0
  313. package/dist/xlsx/dialogs/fill-series.d.ts +10 -0
  314. package/dist/xlsx/dialogs/find-replace.d.ts +8 -0
  315. package/dist/xlsx/dialogs/format-cells/alignment-tab.d.ts +5 -0
  316. package/dist/xlsx/dialogs/format-cells/border-tab.d.ts +4 -0
  317. package/dist/xlsx/dialogs/format-cells/color-swatches.d.ts +10 -0
  318. package/dist/xlsx/dialogs/format-cells/fill-tab.d.ts +11 -0
  319. package/dist/xlsx/dialogs/format-cells/font-tab.d.ts +2 -0
  320. package/dist/xlsx/dialogs/format-cells/index.d.ts +6 -0
  321. package/dist/xlsx/dialogs/format-cells/number-tab.d.ts +7 -0
  322. package/dist/xlsx/dialogs/format-cells/protection-tab.d.ts +2 -0
  323. package/dist/xlsx/dialogs/format-cells/tab-color.d.ts +6 -0
  324. package/dist/xlsx/dialogs/frame.d.ts +27 -0
  325. package/dist/xlsx/dialogs/go-to.d.ts +12 -0
  326. package/dist/xlsx/dialogs/help-dialogs.d.ts +5 -0
  327. package/dist/xlsx/dialogs/host.d.ts +6 -0
  328. package/dist/xlsx/dialogs/hyperlink.d.ts +16 -0
  329. package/dist/xlsx/dialogs/index.d.ts +2 -0
  330. package/dist/xlsx/dialogs/insert-chart.d.ts +7 -0
  331. package/dist/xlsx/dialogs/insert-function.d.ts +10 -0
  332. package/dist/xlsx/dialogs/move-copy-sheet.d.ts +5 -0
  333. package/dist/xlsx/dialogs/name-manager.d.ts +9 -0
  334. package/dist/xlsx/dialogs/package-password.d.ts +3 -0
  335. package/dist/xlsx/dialogs/page-setup-tabs.d.ts +23 -0
  336. package/dist/xlsx/dialogs/page-setup.d.ts +6 -0
  337. package/dist/xlsx/dialogs/paste-special.d.ts +3 -0
  338. package/dist/xlsx/dialogs/prompts.d.ts +42 -0
  339. package/dist/xlsx/dialogs/protect-sheet.d.ts +8 -0
  340. package/dist/xlsx/dialogs/register-navigation.d.ts +2 -0
  341. package/dist/xlsx/dialogs/register-rules.d.ts +2 -0
  342. package/dist/xlsx/dialogs/register-tools.d.ts +2 -0
  343. package/dist/xlsx/dialogs/remove-duplicates.d.ts +2 -0
  344. package/dist/xlsx/dialogs/simple.d.ts +2 -0
  345. package/dist/xlsx/dialogs/sort-dialog.d.ts +6 -0
  346. package/dist/xlsx/dialogs/statistics.d.ts +12 -0
  347. package/dist/xlsx/dialogs/styles.d.ts +1 -0
  348. package/dist/xlsx/dialogs/symbol.d.ts +6 -0
  349. package/dist/xlsx/dialogs/text-to-columns.d.ts +9 -0
  350. package/dist/xlsx/dialogs/zoom.d.ts +2 -0
  351. package/dist/xlsx/editor-attributes.d.ts +26 -0
  352. package/dist/xlsx/editor-core.d.ts +91 -0
  353. package/dist/xlsx/editor-files.d.ts +28 -0
  354. package/dist/xlsx/editor-shell.d.ts +29 -0
  355. package/dist/xlsx/element-api.d.ts +34 -0
  356. package/dist/xlsx/events.d.ts +64 -0
  357. package/dist/xlsx/file-commands.d.ts +24 -0
  358. package/dist/xlsx/formula-bar/formula-input.d.ts +11 -0
  359. package/dist/xlsx/formula-bar/index.d.ts +3 -0
  360. package/dist/xlsx/formula-bar/name-box.d.ts +10 -0
  361. package/dist/xlsx/formula-bar/styles.d.ts +1 -0
  362. package/dist/xlsx/grid/alert.d.ts +4 -0
  363. package/dist/xlsx/grid/cell-editor.d.ts +29 -0
  364. package/dist/xlsx/grid/cell-layer.d.ts +14 -0
  365. package/dist/xlsx/grid/dom.d.ts +19 -0
  366. package/dist/xlsx/grid/drawing-keys.d.ts +7 -0
  367. package/dist/xlsx/grid/drawings.d.ts +12 -0
  368. package/dist/xlsx/grid/formula-field.d.ts +11 -0
  369. package/dist/xlsx/grid/function-assist.d.ts +16 -0
  370. package/dist/xlsx/grid/grid-a11y.d.ts +12 -0
  371. package/dist/xlsx/grid/grid-commands.d.ts +19 -0
  372. package/dist/xlsx/grid/grid-keys.d.ts +19 -0
  373. package/dist/xlsx/grid/grid-menus.d.ts +8 -0
  374. package/dist/xlsx/grid/grid-pointer.d.ts +16 -0
  375. package/dist/xlsx/grid/grid-selection.d.ts +22 -0
  376. package/dist/xlsx/grid/grid-view.d.ts +75 -0
  377. package/dist/xlsx/grid/gridlines.d.ts +7 -0
  378. package/dist/xlsx/grid/header-resize.d.ts +8 -0
  379. package/dist/xlsx/grid/headers.d.ts +9 -0
  380. package/dist/xlsx/grid/index.d.ts +8 -0
  381. package/dist/xlsx/grid/indicators.d.ts +5 -0
  382. package/dist/xlsx/grid/measure.d.ts +9 -0
  383. package/dist/xlsx/grid/pane-chrome.d.ts +22 -0
  384. package/dist/xlsx/grid/point-mode.d.ts +27 -0
  385. package/dist/xlsx/grid/selection-layer.d.ts +32 -0
  386. package/dist/xlsx/grid/smartart.d.ts +10 -0
  387. package/dist/xlsx/grid/styles.d.ts +1 -0
  388. package/dist/xlsx/grid/test-context.d.ts +14 -0
  389. package/dist/xlsx/grid/validation-list.d.ts +13 -0
  390. package/dist/xlsx/index.d.ts +10 -0
  391. package/dist/xlsx/keyboard.d.ts +41 -0
  392. package/dist/xlsx/modules.d.ts +4 -0
  393. package/dist/xlsx/print.d.ts +22 -0
  394. package/dist/xlsx/ribbon/caption.d.ts +4 -0
  395. package/dist/xlsx/ribbon/color-grid.d.ts +18 -0
  396. package/dist/xlsx/ribbon/controls-input.d.ts +22 -0
  397. package/dist/xlsx/ribbon/controls.d.ts +28 -0
  398. package/dist/xlsx/ribbon/icons.d.ts +8 -0
  399. package/dist/xlsx/ribbon/keytips.d.ts +12 -0
  400. package/dist/xlsx/ribbon/overflow.d.ts +3 -0
  401. package/dist/xlsx/ribbon/popover.d.ts +30 -0
  402. package/dist/xlsx/ribbon/ribbon.d.ts +24 -0
  403. package/dist/xlsx/ribbon/tabs/contextual.d.ts +3 -0
  404. package/dist/xlsx/ribbon/tabs/formulas-data.d.ts +3 -0
  405. package/dist/xlsx/ribbon/tabs/home-groups.d.ts +6 -0
  406. package/dist/xlsx/ribbon/tabs/home.d.ts +3 -0
  407. package/dist/xlsx/ribbon/tabs/index.d.ts +2 -0
  408. package/dist/xlsx/ribbon/tabs/insert-layout.d.ts +3 -0
  409. package/dist/xlsx/ribbon/visibility.d.ts +1 -0
  410. package/dist/xlsx/sheet-tabs/drag.d.ts +12 -0
  411. package/dist/xlsx/sheet-tabs/index.d.ts +4 -0
  412. package/dist/xlsx/sheet-tabs/rename.d.ts +8 -0
  413. package/dist/xlsx/sheet-tabs/render.d.ts +15 -0
  414. package/dist/xlsx/sheet-tabs/styles.d.ts +1 -0
  415. package/dist/xlsx/shell-commands.d.ts +13 -0
  416. package/dist/xlsx/shortcut-help.d.ts +15 -0
  417. package/dist/xlsx/status-bar.d.ts +26 -0
  418. package/dist/xlsx/test-support/shell.d.ts +19 -0
  419. package/dist/xlsx/theme/index.d.ts +5 -0
  420. package/dist/xlsx/theme/styles.d.ts +7 -0
  421. package/dist/xlsx/title-bar.d.ts +17 -0
  422. package/dist/xlsx/toast.d.ts +8 -0
  423. package/dist/xlsx.js +14188 -0
  424. package/package.json +27 -2
@@ -0,0 +1,53 @@
1
+ import type { RibbonAction } from './ribbon-action';
2
+ import { type RibbonIcon } from './ribbon-icons';
3
+ /** Building blocks for ribbon tabs: buttons, selects, labelled groups and rows. */
4
+ export declare const button: (label: string, text: string, action: RibbonAction, className?: string) => HTMLButtonElement;
5
+ export declare const select: (label: string, values: Array<[string, string]>, action: (value: string) => RibbonAction) => HTMLSelectElement;
6
+ /**
7
+ * Word's dropdown command: an icon over a caption with a caret. The real `<select>` stays in the
8
+ * DOM, transparent and covering the whole control, so the browser's native list opens on click,
9
+ * assistive technology sees a combobox, and the editor keeps reading and writing `select.value`.
10
+ * `compact` drops the caption, leaving an icon and caret (Word's Line and Paragraph Spacing).
11
+ */
12
+ export declare const menuSelect: (label: string, icon: RibbonIcon, values: Array<[string, string]>, action: (value: string) => RibbonAction, options?: {
13
+ compact?: boolean;
14
+ momentary?: boolean;
15
+ }) => HTMLDivElement;
16
+ /**
17
+ * A row-height command with its own dropdown, like Word's Find and Select: the main button runs
18
+ * `main`; the caret opens a menu of related commands (a transparent select over the caret).
19
+ */
20
+ export declare const splitInline: (main: HTMLButtonElement, menuLabel: string, values: Array<[string, string]>, action: (value: string) => RibbonAction) => HTMLDivElement;
21
+ /** Wraps an existing select in the dropdown-command look (see `menuSelect`). */
22
+ export declare const menuAround: (control: HTMLSelectElement, label: string, icon: RibbonIcon, options?: {
23
+ compact?: boolean;
24
+ momentary?: boolean;
25
+ }) => HTMLDivElement;
26
+ /** A labelled number field (Word's indent spinners). `label` is both the visible text and the name. */
27
+ export declare const spinner: (label: string, action: (value: number) => RibbonAction, options: {
28
+ min: number;
29
+ max: number;
30
+ step: number;
31
+ }) => HTMLLabelElement;
32
+ /** Word's dialog launcher: the small corner button of a group that opens its full dialog. */
33
+ export declare const launcher: (label: string, action: RibbonAction) => HTMLButtonElement;
34
+ export declare const group: (label: string, ...children: HTMLElement[]) => HTMLDivElement;
35
+ export declare const row: (...children: HTMLElement[]) => HTMLDivElement;
36
+ /** An icon button. `large` stacks a caption under a 28px icon, as Word's big commands do. */
37
+ export declare const tool: (label: string, icon: RibbonIcon, action: RibbonAction, options?: {
38
+ large?: boolean;
39
+ inline?: boolean;
40
+ caption?: string;
41
+ className?: string;
42
+ }) => HTMLButtonElement;
43
+ /** A stack of controls filling a group's height, such as Paste's Cut/Copy column. */
44
+ export declare const stack: (...children: HTMLElement[]) => HTMLDivElement;
45
+ /**
46
+ * Word's split colour button: the main half applies the last chosen colour (shown as a bar under
47
+ * the icon) and the caret opens a swatch popover. `choices` are `[value, English label]` pairs.
48
+ */
49
+ export declare const colorSplit: (label: string, icon: RibbonIcon, choices: Array<[string, string]>, action: (value: string) => RibbonAction, initial: string, grid?: {
50
+ noneLabel?: string;
51
+ }) => HTMLDivElement;
52
+ /** Records `value` as the colour a split button applies next and draws it in the bar. */
53
+ export declare function setColorControl(main: HTMLElement, value: string): void;
@@ -0,0 +1,16 @@
1
+ /** Closes whichever ribbon popover is open. */
2
+ export declare function closeRibbonPopover(): void;
3
+ /**
4
+ * Shows `pop` under `anchor` and wires dismissal: Escape, a pointer press elsewhere, or `close()`.
5
+ * Fixed positioning keeps it clear of the ribbon's overflow clipping. Returns false (and closes) when
6
+ * the same anchor was already open, so the caret works as a toggle.
7
+ */
8
+ export declare function mountPopover(anchor: HTMLElement, pop: HTMLElement, expanded: HTMLElement, align?: 'start' | 'end'): boolean;
9
+ /** Opens a swatch grid under the caret button `anchor`. */
10
+ export declare function openSwatchPopover(anchor: HTMLElement, choices: Array<[string, string]>, choose: (value: string) => void): void;
11
+ /**
12
+ * Opens a scrolling list of `items` under a combo box, with `current` marked and scrolled into view.
13
+ * Up/Down move through the entries, Enter chooses, Escape closes. `preview` sets each entry in its
14
+ * own font face.
15
+ */
16
+ export declare function openListPopover(anchor: HTMLElement, items: readonly string[], current: string, preview: boolean, choose: (value: string) => void): void;
@@ -0,0 +1,4 @@
1
+ import type { EditorCore } from './editor-core';
2
+ import type { RibbonAction } from './ribbon';
3
+ /** Routes a ribbon action to the controller that owns it. */
4
+ export declare function routeRibbonAction(core: EditorCore, action: RibbonAction): void;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * The tab row belongs to the shared `office-ui-ribbon`: it builds the tabs from the panels, keeps one
3
+ * panel visible and renders the File button. Everything docx does to a tab is therefore done to its
4
+ * panel, through these helpers, so no other module reaches into the ribbon's shadow root.
5
+ */
6
+ export type RibbonElement = HTMLElement & {
7
+ selected: string;
8
+ focusTab(): void;
9
+ focusFile(): void;
10
+ setTabHidden(tab: string, reason: string, hidden: boolean): void;
11
+ tabButton(tab: string): HTMLButtonElement | null;
12
+ fileButton(): HTMLButtonElement | null;
13
+ };
14
+ /** The panel of tab `key` (`home`, `table`, `header-footer`...). */
15
+ export declare function panelOf(ribbon: ParentNode, key: string): HTMLElement | null;
16
+ /** Every panel, in tab order. */
17
+ export declare function panelsOf(ribbon: ParentNode): HTMLElement[];
18
+ /** The key of the tab that is showing. */
19
+ export declare function selectedTab(ribbon: HTMLElement): string;
20
+ export declare function selectTab(ribbon: HTMLElement, key: string): void;
21
+ /** Why a tab can be missing: the tools do not apply to the selection, or a customisation removed it. */
22
+ export type TabHiddenReason = 'contextual' | 'custom';
23
+ /** Hides or shows tab `key` for one reason; the shared ribbon shows it once no reason hides it. */
24
+ export declare function setTabHidden(ribbon: HTMLElement, key: string, reason: TabHiddenReason, hidden: boolean): void;
25
+ export declare const isTabHidden: (panel: HTMLElement) => boolean;
26
+ /** The rendered tab buttons, for focus and key tips only. */
27
+ export declare function tabButtons(ribbon: HTMLElement): HTMLButtonElement[];
28
+ /** The File button the ribbon renders. */
29
+ export declare function fileButton(ribbon: HTMLElement): HTMLButtonElement | null;
@@ -0,0 +1,2 @@
1
+ /** The Insert, Layout, References, Review and View tabs. */
2
+ export declare function buildOtherPanels(panels: Map<string, HTMLElement>): void;
@@ -0,0 +1,8 @@
1
+ import { type RibbonActionId } from 'ooxml-core/docx/ui';
2
+ /** Stable action id of a ribbon control (looked up from its English label, whatever the locale). */
3
+ export declare function ribbonControlId(control: HTMLElement): RibbonActionId | null;
4
+ /**
5
+ * Applies `showToolbar` and `hiddenActions` to the ribbon. Groups and tabs whose controls are all
6
+ * hidden are hidden too, and the active tab moves to the first visible one. Unknown ids are ignored.
7
+ */
8
+ export declare function applyRibbonVisibility(toolbar: HTMLElement, showToolbar: boolean, hiddenActions: readonly RibbonActionId[]): void;
@@ -0,0 +1,5 @@
1
+ export type { RibbonAction } from './ribbon-action';
2
+ export declare function createRibbon(locale?: string): HTMLElement;
3
+ /** Gives every select the tooltip of its selected label so an ellipsized value stays readable. */
4
+ export declare function syncSelectTitles(root: ParentNode): void;
5
+ export declare function setRibbonLocale(root: HTMLElement, value: string): void;
@@ -0,0 +1,7 @@
1
+ import type { DocumentModel } from 'ooxml-core/docx';
2
+ import type { EditorView } from 'prosemirror-view';
3
+ import { type RulerGeometry } from './ruler';
4
+ /** The ruler geometry for the paragraph holding the selection, from the document's page attributes. */
5
+ export declare function rulerGeometry(view: EditorView, model: DocumentModel): RulerGeometry;
6
+ /** Redraws the ruler, if the View tab has it on, for the current selection and zoom. */
7
+ export declare function syncRuler(toolbar: HTMLElement, view: EditorView, model: DocumentModel): void;
@@ -0,0 +1,36 @@
1
+ import type { ParagraphFormat } from './paragraph-format';
2
+ /** Everything the ruler draws, in CSS pixels at 100% zoom (96 per inch). */
3
+ export interface RulerGeometry {
4
+ pageWidth: number;
5
+ marginLeft: number;
6
+ marginRight: number;
7
+ /** Current paragraph's indents, measured from the margins. */
8
+ indentLeft: number;
9
+ indentRight: number;
10
+ /** Extra first-line offset from the left indent: positive first line, negative hanging. */
11
+ firstLine: number;
12
+ }
13
+ export declare const PX_PER_INCH = 96;
14
+ /** Marker positions from the page's left edge: first-line, left indent, right indent. */
15
+ export declare function markerPositions(geometry: RulerGeometry): {
16
+ firstLine: number;
17
+ left: number;
18
+ right: number;
19
+ };
20
+ /** Whole-inch labels of the ruler: 0 at the left margin, counting toward the right margin. */
21
+ export declare function inchLabels(geometry: RulerGeometry): Array<{
22
+ at: number;
23
+ text: string;
24
+ }>;
25
+ export type RulerMarker = 'first-line' | 'left' | 'right';
26
+ /** The paragraph fields a marker dragged to `x` (px from the page's left edge) changes. */
27
+ export declare function markerChange(marker: RulerMarker, x: number, geometry: RulerGeometry): Partial<Pick<ParagraphFormat, 'leftInches' | 'rightInches' | 'special' | 'specialInches'>>;
28
+ /**
29
+ * Word's horizontal ruler above the page: inch ticks counted from the left margin, the margins
30
+ * shaded, and draggable markers for the current paragraph's first-line, left and right indents.
31
+ * Dragging snaps to sixteenths of an inch and applies as one undoable step on release. Margin
32
+ * edges and tab stops are not draggable.
33
+ */
34
+ export declare function createRuler(onChange?: (change: ReturnType<typeof markerChange>) => void): HTMLElement;
35
+ /** Positions the ruler's parts for `geometry`; `zoom` matches the page's CSS zoom. */
36
+ export declare function updateRuler(ruler: HTMLElement, geometry: RulerGeometry, zoom: number): void;
@@ -0,0 +1,9 @@
1
+ import type { TextRun } from 'ooxml-core/docx';
2
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
3
+ /** A note reference's number in document order and its label in the document's number format. */
4
+ export type NoteNumberLookup = (kind: 'footnote' | 'endnote', id: string) => {
5
+ number: number;
6
+ label: string;
7
+ };
8
+ export declare function runToInlineNodes(run: TextRun, noteNumber?: NoteNumberLookup): ProseMirrorNode[];
9
+ export declare function appendInlineNode(runs: TextRun[], child: ProseMirrorNode): void;
@@ -0,0 +1,4 @@
1
+ import type { TextRun } from 'ooxml-core/docx';
2
+ import type { Mark } from 'prosemirror-model';
3
+ /** ProseMirror marks carrying a text run's character formatting, links, fields and revisions. */
4
+ export declare function marksForRun(run: TextRun): Mark[];
@@ -0,0 +1,11 @@
1
+ import type { RunFormatting } from 'ooxml-core/docx';
2
+ import { type TextMeasurer } from 'ooxml-core/docx/layout';
3
+ export interface ScaledSegment {
4
+ from: number;
5
+ to: number;
6
+ css: string;
7
+ }
8
+ /** Reserve scaled advances while leaving source text available to the browser's caret/selection. */
9
+ export declare function scaledSegments(text: string, formatting: RunFormatting, family: string | undefined, measurer: TextMeasurer): ScaledSegment[];
10
+ /** Each editor owns its cache; replacing it when fonts load avoids measuring fallback faces forever. */
11
+ export declare function scaleMeasurer(): TextMeasurer;
@@ -0,0 +1,19 @@
1
+ import { Plugin, PluginKey, type EditorState } from 'prosemirror-state';
2
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
3
+ import { type DocumentModel, type RunFormatting, type TextRun } from 'ooxml-core/docx';
4
+ type Theme = NonNullable<DocumentModel['theme']>;
5
+ export declare function themeFontOf(formatting: RunFormatting, theme: Theme | undefined): string | undefined;
6
+ /** CSS for inherited run formatting; direct formatting still renders through the run's own marks. */
7
+ export declare function runFormattingCss(formatting: RunFormatting, theme?: Theme, direct?: RunFormatting): string;
8
+ /** The run a text node stands for, with its marks as direct formatting. */
9
+ export declare function runOf(node: ProseMirrorNode): TextRun | undefined;
10
+ /**
11
+ * Renders formatting a run inherits from document defaults, its paragraph style, its table's style
12
+ * (e.g. a bold header row), its character style and the theme. It is display-only: decorations
13
+ * never enter the model or collaboration steps.
14
+ */
15
+ export declare const runStylesKey: PluginKey<any>;
16
+ /** The document model the editor's run-style decorations resolve against, if the plugin is on. */
17
+ export declare function styleModelOf(state: EditorState): DocumentModel | undefined;
18
+ export declare function runStylesPlugin(getModel: () => DocumentModel): Plugin<any>;
19
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
2
+ import { Decoration } from 'prosemirror-view';
3
+ /** Atomic scaled spans must not create a line break at a formatting boundary.
4
+ * Keep the paragraph's source whitespace and expose only the core's text breaks.
5
+ * Empty wbr widgets have no text to leak into copying, editing or serialization.
6
+ */
7
+ export declare function scaledParagraphBreaks(paragraph: ProseMirrorNode, start: number): Decoration[];
@@ -0,0 +1,6 @@
1
+ import { Schema } from 'prosemirror-model';
2
+ export { wordHighlightColors } from 'ooxml-core/docx/ui';
3
+ /** Single line spacing as a multiple of the font size, close to Calibri's and Arial's metrics. */
4
+ export declare const NATURAL_LINE_HEIGHT = 1.2;
5
+ export declare function paragraphStyle(attrs: Record<string, unknown>): string;
6
+ export declare const schema: Schema<"doc" | "equation" | "fieldMarker" | "hardBreak" | "image" | "nestedTablePreview" | "noteReference" | "pageBreak" | "paragraph" | "table" | "tableCell" | "tableRow" | "text", "bold" | "characterStyle" | "comment" | "deletion" | "field" | "font" | "highlight" | "insertion" | "italic" | "language" | "link" | "runProperties" | "runRtl" | "strike" | "underline" | "verticalAlign">;
@@ -0,0 +1,4 @@
1
+ import type { EditorState } from 'prosemirror-state';
2
+ export type Script = 'none' | 'superscript' | 'subscript';
3
+ /** Effective script formatting, including paragraph/character styles and typing marks. */
4
+ export declare function selectionScript(state: EditorState): Script | null;
@@ -0,0 +1,32 @@
1
+ import { type Node as ProseMirrorNode } from 'prosemirror-model';
2
+ import type { EditorView } from 'prosemirror-view';
3
+ export interface SearchMatch {
4
+ from: number;
5
+ to: number;
6
+ }
7
+ export interface SearchStatus {
8
+ query: string;
9
+ count: number;
10
+ active: number;
11
+ readOnly: boolean;
12
+ }
13
+ export declare class SearchController {
14
+ private readonly getView;
15
+ private query;
16
+ private caseSensitive;
17
+ private matches;
18
+ private activeIndex;
19
+ constructor(getView: () => EditorView | undefined);
20
+ get status(): SearchStatus;
21
+ search(query: string, caseSensitive?: boolean): SearchStatus;
22
+ refresh(): SearchStatus;
23
+ findNext(): SearchMatch | null;
24
+ findPrevious(): SearchMatch | null;
25
+ replaceOne(replacement: string): boolean;
26
+ replaceAll(replacement: string): number;
27
+ private currentMatches;
28
+ private indexAtSelection;
29
+ private select;
30
+ private replace;
31
+ }
32
+ export declare function findTextMatches(doc: ProseMirrorNode, query: string, caseSensitive?: boolean): SearchMatch[];
@@ -0,0 +1,14 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ export interface SearchPanelOptions {
3
+ getView: () => EditorView | undefined;
4
+ onClose?: () => void;
5
+ }
6
+ export interface SearchPanelHandle {
7
+ element: HTMLElement;
8
+ open(focus?: 'find' | 'replace'): void;
9
+ close(): void;
10
+ refresh(): void;
11
+ setLocale(locale: string): void;
12
+ readonly isOpen: boolean;
13
+ }
14
+ export declare function createSearchPanel(options: SearchPanelOptions, initialLocale?: string): SearchPanelHandle;
@@ -0,0 +1,14 @@
1
+ import { Plugin } from 'prosemirror-state';
2
+ import type { EditorView } from 'prosemirror-view';
3
+ import { type DocumentModel, sectionsOf } from 'ooxml-core/docx';
4
+ export { sectionsOf };
5
+ /** The section containing the selection (Word applies page setup to the current section). */
6
+ export declare function currentSectionIndex(view: EditorView, model: DocumentModel): number;
7
+ export { setColumns, setLineNumbering, setMargins, setOrientation, setPageNumbering, setTitlePage, setVerticalAlign, withSection, } from 'ooxml-core/docx';
8
+ /**
9
+ * Word's Layout > Breaks > Section Break: the current section ends after the selected paragraph
10
+ * and a new section with the same settings begins; `type` is how the new section starts.
11
+ */
12
+ export declare function insertSectionBreak(view: EditorView, model: DocumentModel, type: 'nextPage' | 'continuous' | 'evenPage' | 'oddPage'): DocumentModel;
13
+ /** Marks paragraphs that end a section, like Word's formatting marks for section breaks. */
14
+ export declare function sectionBreaksPlugin(): Plugin<any>;
@@ -0,0 +1,3 @@
1
+ import { type EditorLocale } from './localization';
2
+ /** Localizes the accessible names of the host element and the page surface. */
3
+ export declare function applyShellLabels(host: HTMLElement, paper: HTMLElement | undefined, locale: EditorLocale): void;
@@ -0,0 +1,16 @@
1
+ import { type ShortcutRegistry } from './keyboard';
2
+ import { type EditorLocale, type LocalizationKey } from './localization';
3
+ export interface ShortcutRow {
4
+ keys: string;
5
+ label: LocalizationKey;
6
+ }
7
+ /** Only bindings that exist in the editor's keymap are listed, grouped by action. */
8
+ export declare function editorShortcutRows(mac: boolean, bindings?: Record<string, unknown>): ShortcutRow[];
9
+ export declare function shortcutRows(registry: ShortcutRegistry, mac: boolean): ShortcutRow[];
10
+ export interface ShortcutHelp {
11
+ element: HTMLElement;
12
+ readonly isOpen: boolean;
13
+ open(rows: ShortcutRow[], locale: EditorLocale): void;
14
+ close(): void;
15
+ }
16
+ export declare function createShortcutHelp(onClose: () => void): ShortcutHelp;
@@ -0,0 +1,26 @@
1
+ import type { DocxDiagram, ThemeCatalog } from 'ooxml-core/docx';
2
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
3
+ import type { NodeView } from 'prosemirror-view';
4
+ /** What the shared renderer reports (`office-smartart-render`), as far as this view reads it. */
5
+ interface RenderReport {
6
+ approximatedGeometries?: string[];
7
+ approximatedFills?: string[];
8
+ flattened3d?: number;
9
+ }
10
+ /** Registers `<office-ui-smartart>` once; a no-op without a DOM (server rendering). */
11
+ export declare function registerSmartArt(): void;
12
+ export declare function parseDiagram(value: unknown): DocxDiagram | undefined;
13
+ /** The accessible name: alt text, then title, then the object name, then a generic label. */
14
+ export declare function diagramLabel(node: ProseMirrorNode, diagram: DocxDiagram): string;
15
+ /** Honest, human-readable notes shown beside the diagram (never a fidelity claim). */
16
+ export declare function diagramNotes(diagram: DocxDiagram, report: RenderReport | undefined, themed?: {
17
+ unappliedTransforms: string[];
18
+ alphaDropped: boolean;
19
+ }): string[];
20
+ /**
21
+ * Node view for an image node that carries a SmartArt `diagram`: mounts `<office-ui-smartart>`
22
+ * with the cached drawing (theme colours resolved), scaled from the diagram frame to the run's
23
+ * size. Read-only: the diagram parts are never edited, and the node stays an atom.
24
+ */
25
+ export declare function smartArtNodeView(node: ProseMirrorNode, diagram: DocxDiagram, theme: ThemeCatalog | undefined): NodeView;
26
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ export type SortOrder = 'ascending' | 'descending';
3
+ /**
4
+ * Home > Sort: orders the selected paragraphs by their text, using the display language's
5
+ * collation with numbers compared as numbers ("Item 2" before "Item 10"). Only top-level
6
+ * paragraphs sort; a selection that includes a table is refused rather than partly sorted.
7
+ * Returns whether anything moved.
8
+ */
9
+ export declare function sortParagraphs(view: EditorView, order: SortOrder, locale?: string): boolean;
@@ -0,0 +1,6 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ /**
3
+ * Word's Spelling toggle drives the browser's own spell checker on the editing surface. It does not
4
+ * bundle a dictionary, grammar checker or Word's Editor pane.
5
+ */
6
+ export declare function syncSpellingButton(toolbar: HTMLElement | undefined, view: EditorView): void;
@@ -0,0 +1,23 @@
1
+ export interface StatusBarHandlers {
2
+ setViewMode(mode: 'draft' | 'print'): void;
3
+ setZoom(percent: number): void;
4
+ showCompatibilityNotes(): void;
5
+ }
6
+ export interface StatusBar {
7
+ element: HTMLElement;
8
+ setPageAndWords(page: string, words: string): void;
9
+ setLanguage(language: string): void;
10
+ setNoteCount(count: number): void;
11
+ setViewMode(mode: 'draft' | 'print'): void;
12
+ setZoom(percent: number): void;
13
+ /** Redraws every label after the editor locale changed. */
14
+ relocalize(): void;
15
+ }
16
+ export declare const ZOOM_MIN = 50;
17
+ export declare const ZOOM_MAX = 200;
18
+ /**
19
+ * Word-style status bar: page/words/language on the left, views and zoom on the right. The shared
20
+ * `office-ui-status-bar` draws it from translated state and `office-ui-zoom-slider` supplies the zoom
21
+ * controls; this module only holds the model and routes the activations to the editor.
22
+ */
23
+ export declare function createStatusBar(handlers: StatusBarHandlers): StatusBar;
@@ -0,0 +1,22 @@
1
+ import { type DocumentModel } from 'ooxml-core/docx';
2
+ /** One tile: a style id (`''` is the paragraph's own default) and the name shown under its sample. */
3
+ export interface GalleryStyle {
4
+ id: string;
5
+ name: string;
6
+ }
7
+ export type StyleKind = 'paragraph' | 'character';
8
+ /** The paragraph styles Word shows as gallery tiles: the default first, technical styles left out. */
9
+ export declare function recommendedStyles(all: readonly GalleryStyle[]): GalleryStyle[];
10
+ /** The character styles Word offers in the gallery (Emphasis, Strong, ...), not linked or technical ones. */
11
+ export declare function recommendedCharacterStyles(all: readonly GalleryStyle[]): GalleryStyle[];
12
+ /** A tile previewing `style` on paper; `choose` receives the style id when it is clicked. */
13
+ /** Word shows built-in style names capitalised ("Heading 1") although the file stores "heading 1". */
14
+ export declare const displayStyleName: (name: string) => string;
15
+ export declare function createStyleTile(style: GalleryStyle, model: DocumentModel, kind: StyleKind, choose: (id: string) => void): HTMLButtonElement;
16
+ /** Marks the tile for `selected` pressed and (un)disables all of them. */
17
+ export declare function markSelectedTiles(root: ParentNode, selected: string, disabled: boolean): void;
18
+ /**
19
+ * Word's Styles gallery: a scrolling strip of tiles, each previewing its style. Tiles are rebuilt
20
+ * only when the list changes; `selected` just moves the pressed state. `choose` receives the id.
21
+ */
22
+ export declare function syncStyleGallery(gallery: HTMLElement, styles: readonly GalleryStyle[], selected: string, model: DocumentModel, choose: (id: string) => void, disabled: boolean): void;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Token presets are generated from theme/defaults.ts so the TypeScript presets and the shadow-root
3
+ * CSS cannot drift. `theme="auto"` (the default) follows the OS; explicit values always win.
4
+ */
5
+ export declare const themeTokenText: string;
6
+ export declare const editorStyleText: string;
@@ -0,0 +1,7 @@
1
+ import type { DocumentModel } from 'ooxml-core/docx';
2
+ import type { EditorView } from 'prosemirror-view';
3
+ import { type EditorLocale } from './localization';
4
+ /** Builds the Styles group on first use and keeps its gallery, tiles and state select current. */
5
+ export declare function syncStylePicker(toolbar: HTMLElement, view: EditorView, model: DocumentModel, locale: EditorLocale): void;
6
+ /** Removes the Styles group and its pane, so a new document builds them afresh. */
7
+ export declare function resetStylePicker(toolbar?: HTMLElement): void;
@@ -0,0 +1,15 @@
1
+ import { type EditorLocale } from './localization';
2
+ import type { StylesData } from './styles-popover';
3
+ export interface StylesPane {
4
+ element: HTMLElement;
5
+ readonly isOpen: boolean;
6
+ open(): void;
7
+ close(): void;
8
+ /** Redraws the lists for the current document and selection (a no-op while closed). */
9
+ render(data: StylesData, locale: EditorLocale): void;
10
+ }
11
+ /**
12
+ * Word's Styles pane: a docked list of every paragraph and character style. Each row previews its
13
+ * style; choosing one applies it to the selection without closing the pane.
14
+ */
15
+ export declare function createStylesPane(onClose: () => void): StylesPane;
@@ -0,0 +1,24 @@
1
+ import type { DocumentModel } from 'ooxml-core/docx';
2
+ import { type GalleryStyle } from './style-gallery';
3
+ /** Everything the expanded gallery and the Styles pane show and can do. */
4
+ export interface StylesData {
5
+ /** Recommended styles, for the gallery and its expanded view. */
6
+ paragraph: GalleryStyle[];
7
+ character: GalleryStyle[];
8
+ /** Every style, for the Styles pane. */
9
+ allParagraph: GalleryStyle[];
10
+ allCharacter: GalleryStyle[];
11
+ selectedParagraph: string;
12
+ selectedCharacter: string;
13
+ model: DocumentModel;
14
+ disabled: boolean;
15
+ chooseParagraph(id: string): void;
16
+ chooseCharacter(id: string): void;
17
+ clearFormatting(): void;
18
+ openPane(): void;
19
+ }
20
+ /**
21
+ * Word's expanded Styles gallery: every paragraph style and every character style as preview
22
+ * tiles, then Clear Formatting and the Styles pane. Choosing a tile applies it and closes.
23
+ */
24
+ export declare function openStylesGallery(anchor: HTMLElement, data: StylesData, onClose: () => void): void;
@@ -0,0 +1,8 @@
1
+ import { Plugin } from 'prosemirror-state';
2
+ import { DecorationSet } from 'prosemirror-view';
3
+ /**
4
+ * Sizes tabs on the editing surface at Word's tab stops (custom left/right/center/decimal stops
5
+ * with leaders, then default half-inch stops) by measuring the rendered text, since CSS tab sizes
6
+ * cannot follow per-paragraph stops. Display only: nothing enters the document or its history.
7
+ */
8
+ export declare function tabStopsPlugin(): Plugin<DecorationSet>;
@@ -0,0 +1,51 @@
1
+ import type { EditorState } from 'prosemirror-state';
2
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
3
+ import type { EditorView } from 'prosemirror-view';
4
+ /** Borders for the cells of a simple (structure-editable) table, edited per cell like Word's Borders menu. */
5
+ export type CellSide = 'top' | 'bottom' | 'left' | 'right';
6
+ export type TableBorderPreset = 'none' | 'bottom' | 'top' | 'left' | 'right' | 'all' | 'outside' | 'insideH' | 'insideV';
7
+ export interface BorderPen {
8
+ style: string;
9
+ sizeEighthPoints: number;
10
+ color?: string;
11
+ }
12
+ export interface TableBorderContext {
13
+ tablePos: number;
14
+ rows: number;
15
+ columns: number;
16
+ /** Inclusive cell rectangle covered by the selection. */
17
+ rect: {
18
+ top: number;
19
+ bottom: number;
20
+ left: number;
21
+ right: number;
22
+ };
23
+ cells: Array<{
24
+ pos: number;
25
+ row: number;
26
+ column: number;
27
+ node: ProseMirrorNode;
28
+ }>;
29
+ }
30
+ /** Word's default border pen: a single 0.5 pt automatic-colour line. */
31
+ export declare const DEFAULT_PEN: BorderPen;
32
+ /** The table and the cells the selection touches, or null outside a simple table. */
33
+ export declare function tableBorderContext(state: EditorState): TableBorderContext | null;
34
+ /**
35
+ * Home > Borders for table cells. A side preset toggles: when every targeted edge already shows a
36
+ * line they are removed, otherwise they are drawn with `pen`. `none` clears every edge of the
37
+ * selection, inside and out.
38
+ */
39
+ export declare function setCellBorders(view: EditorView, preset: TableBorderPreset, pen?: BorderPen): boolean;
40
+ export interface CellBorderSettings {
41
+ scope: 'cell' | 'table';
42
+ /** Edges to draw with `pen`; the others of the scope are cleared. */
43
+ sides: Partial<Record<CellSide | 'insideH' | 'insideV', boolean>>;
44
+ pen: BorderPen;
45
+ /** Omitted preserves existing fill, null explicitly clears it. */
46
+ fill?: string | null;
47
+ }
48
+ /** Borders and Shading dialog, Cell or Table scope: draws the checked edges and clears the others. */
49
+ export declare function applyCellBorderSettings(view: EditorView, settings: CellBorderSettings): boolean;
50
+ /** What the dialog shows for `scope`: which edges have a line, and the first line's pen. */
51
+ export declare function readCellBorderSettings(state: EditorState, scope: 'cell' | 'table'): CellBorderSettings | null;
@@ -0,0 +1,8 @@
1
+ import type { TableCell } from 'ooxml-core/docx';
2
+ import type { tablePropertiesContext } from './table-properties';
3
+ /** Exposes editable alignments without normalizing untouched imported or mixed values. */
4
+ export declare function createCellAlignmentField(): {
5
+ element: HTMLFieldSetElement;
6
+ load(context: NonNullable<ReturnType<typeof tablePropertiesContext>>): void;
7
+ patch(): TableCell['verticalAlign'] | null | undefined;
8
+ };
@@ -0,0 +1,9 @@
1
+ import { type TableCellMargins } from 'ooxml-core/docx';
2
+ import type { tablePropertiesContext } from './table-properties';
3
+ /** Selected-cell overrides stay separate from the table's defaults and untouched mixed values. */
4
+ export declare function createCellMarginFields(onChange: () => void): {
5
+ element: HTMLFieldSetElement;
6
+ load(context: NonNullable<ReturnType<typeof tablePropertiesContext>>): void;
7
+ valid(): boolean;
8
+ patch(): TableCellMargins | null | undefined;
9
+ };
@@ -0,0 +1,6 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ export type TableCommand = 'rowBefore' | 'rowAfter' | 'deleteRow' | 'columnBefore' | 'columnAfter' | 'deleteColumn' | 'deleteTable';
3
+ /** Reports whether the current selection can receive the requested table edit. */
4
+ export declare function canExecuteTableCommand(view: EditorView, action: TableCommand): boolean;
5
+ /** Applies a structural command to the rectangular table containing the selection. */
6
+ export declare function executeTableCommand(view: EditorView, action: TableCommand): boolean;
@@ -0,0 +1,15 @@
1
+ import type { Node as ProseMirrorNode } from 'prosemirror-model';
2
+ import type { Paragraph, Table, TableStyleCatalog } from 'ooxml-core/docx';
3
+ export declare function tableNode(block: Table, paragraphNode: (paragraph: Paragraph) => ProseMirrorNode, tableStyles?: TableStyleCatalog): ProseMirrorNode;
4
+ /** Reads editable formatting from nodes rather than a stale prior model. */
5
+ export declare function tableFormattingFromNode(node: ProseMirrorNode): {
6
+ rowProperties: Table['rowProperties'];
7
+ cellMargins: Table['cellMargins'];
8
+ };
9
+ /** Rebuilds a simple (structurally editable) table directly from its visible ProseMirror rows. */
10
+ export declare function convertSimpleTable(node: ProseMirrorNode, convertParagraph: (paragraph: ProseMirrorNode) => Paragraph, prior?: Table): Table['rows'];
11
+ /**
12
+ * Patches paragraph content back into a merged/nested/complex table's prior structure by cell
13
+ * identity, leaving row/cell layout, merges and descriptive properties exactly as they were.
14
+ */
15
+ export declare function convertMergedTable(node: ProseMirrorNode, prior: Table, convertParagraph: (paragraph: ProseMirrorNode) => Paragraph): Table;
@@ -0,0 +1,10 @@
1
+ /** Word's table size picker: how many columns and rows fit the grid, and the hard limits. */
2
+ export declare const PICKER_COLUMNS = 10;
3
+ export declare const PICKER_ROWS = 8;
4
+ /** Clamps a typed size to what the editor inserts. */
5
+ export declare function clampTableSize(value: number, max: number): number;
6
+ /**
7
+ * The Insert > Table drop-down: hover a grid to preview "columns x rows" and click to insert, or
8
+ * type a size. Arrow keys move over the grid and Enter inserts, so it works without a mouse.
9
+ */
10
+ export declare function openTablePicker(anchor: HTMLElement, onPick: (rows: number, columns: number) => void, onClose: () => void): void;
@@ -0,0 +1,3 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ import type { FormatDialog } from './font-dialog';
3
+ export declare function createTablePropertiesDialog(viewOf: () => EditorView | undefined): FormatDialog;