ooxml-ui 1.7.0 → 1.8.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 (143) hide show
  1. package/README.md +89 -36
  2. package/custom-elements.json +251 -4
  3. package/dist/chrome/ruler.d.ts +7 -1
  4. package/dist/chrome/ruler.d.ts.map +1 -1
  5. package/dist/chrome/task-pane.d.ts +2 -0
  6. package/dist/chrome/task-pane.d.ts.map +1 -1
  7. package/dist/chrome/title-bar.d.ts +2 -1
  8. package/dist/chrome/title-bar.d.ts.map +1 -1
  9. package/dist/{chunk-6UPGM3X2.js → chunk-7US5GCXF.js} +158 -153
  10. package/dist/{chunk-VAR6O7II.js → chunk-KF72ZA6V.js} +4 -2
  11. package/dist/{chunk-SCWCZSTE.js → chunk-O7APCA5N.js} +612 -69
  12. package/dist/chunk-W6AV3GHC.js +112 -0
  13. package/dist/controls.d.ts +8 -2
  14. package/dist/controls.d.ts.map +1 -1
  15. package/dist/controls.js +1 -1
  16. package/dist/dialog/dialog-footer.d.ts.map +1 -1
  17. package/dist/dialog/options-dialog.d.ts.map +1 -1
  18. package/dist/docx/editor-core.d.ts +3 -0
  19. package/dist/docx/editor-shell.d.ts +2 -0
  20. package/dist/docx/element-api.d.ts +7 -0
  21. package/dist/docx/events.d.ts +4 -1
  22. package/dist/docx/index.d.ts +1 -0
  23. package/dist/docx/ribbon-color-grid.d.ts +3 -4
  24. package/dist/docx.js +46 -78
  25. package/dist/edit-worker.js +52 -3
  26. package/dist/form/color-custom.d.ts +79 -0
  27. package/dist/form/color-custom.d.ts.map +1 -0
  28. package/dist/form/color-grid.d.ts +125 -0
  29. package/dist/form/color-grid.d.ts.map +1 -0
  30. package/dist/index.d.ts +2 -1
  31. package/dist/index.js +4 -3
  32. package/dist/menu/context-menu.d.ts.map +1 -1
  33. package/dist/menu/menu-button.d.ts +2 -1
  34. package/dist/menu/menu-button.d.ts.map +1 -1
  35. package/dist/notices/paste-options.d.ts.map +1 -1
  36. package/dist/notices/toasts.d.ts.map +1 -1
  37. package/dist/pptx/{chart-3d-view-scene-ERX2GRCD.mjs → chart-3d-view-scene-P6MAFEGL.mjs} +2 -2
  38. package/dist/pptx/{chart-3d-view-scene-55WDENSO.cjs → chart-3d-view-scene-V74F7ZOC.cjs} +38 -38
  39. package/dist/pptx/{chunk-G2YUKLRX.cjs → chunk-526IHNIH.cjs} +1 -1
  40. package/dist/pptx/{chunk-SVN6OBG4.mjs → chunk-DPOES4WM.mjs} +26 -11
  41. package/dist/pptx/{chunk-XGPLA2OY.cjs → chunk-GCS5KBMR.cjs} +481 -605
  42. package/dist/pptx/{chunk-RPRC2EG5.cjs → chunk-K3S2A64B.cjs} +13 -13
  43. package/dist/pptx/{chunk-RCTRRS6E.mjs → chunk-MCHPNO42.mjs} +264 -447
  44. package/dist/pptx/{chunk-AWQRQUPL.mjs → chunk-NAFUYAQP.mjs} +1 -1
  45. package/dist/pptx/{chunk-LCIXR7WE.cjs → chunk-VFPVEVF4.cjs} +26 -11
  46. package/dist/pptx/{chunk-TKATCPOK.mjs → chunk-ZAOYPCAM.mjs} +1 -1
  47. package/dist/pptx/dom/activex-controls-overlay.d.ts.map +1 -1
  48. package/dist/pptx/dom/elements/image.d.ts.map +1 -1
  49. package/dist/pptx/dom/elements/media.d.ts.map +1 -1
  50. package/dist/pptx/dom/elements/text-block.d.ts.map +1 -1
  51. package/dist/pptx/dom/elements/zoom.d.ts.map +1 -1
  52. package/dist/pptx/dom/index.cjs +252 -247
  53. package/dist/pptx/dom/index.mjs +11 -6
  54. package/dist/pptx/export/html2canvas-clone.cjs +2 -2
  55. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  56. package/dist/pptx/index.cjs +3059 -3023
  57. package/dist/pptx/index.mjs +4 -4
  58. package/dist/pptx/render/chart-combo-series.d.ts.map +1 -1
  59. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  60. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  61. package/dist/pptx/render/chart-marker-shape.d.ts.map +1 -1
  62. package/dist/pptx/render/chart-overlays.cjs +7 -7
  63. package/dist/pptx/render/chart-overlays.mjs +1 -1
  64. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  65. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  66. package/dist/pptx/render/chart-view-model.cjs +44 -44
  67. package/dist/pptx/render/chart-view-model.mjs +1 -1
  68. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  69. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  70. package/dist/pptx/render/connector-router-types.d.ts +4 -52
  71. package/dist/pptx/render/connector-router-types.d.ts.map +1 -1
  72. package/dist/pptx/render/connector-router.d.ts +4 -32
  73. package/dist/pptx/render/connector-router.d.ts.map +1 -1
  74. package/dist/pptx/render/index.d.ts +1 -0
  75. package/dist/pptx/render/index.d.ts.map +1 -1
  76. package/dist/pptx/render/ribbon-add-ins.d.ts +53 -0
  77. package/dist/pptx/render/ribbon-add-ins.d.ts.map +1 -0
  78. package/dist/pptx/web-components/index.d.ts +1 -0
  79. package/dist/pptx/web-components/index.d.ts.map +1 -1
  80. package/dist/pptx/web-components/ribbon-add-in.d.ts +20 -0
  81. package/dist/pptx/web-components/ribbon-add-in.d.ts.map +1 -0
  82. package/dist/ribbon/add-in-tabs.d.ts +36 -0
  83. package/dist/ribbon/group-overflow.d.ts +37 -0
  84. package/dist/ribbon/group-overflow.d.ts.map +1 -0
  85. package/dist/ribbon/ribbon-tabs.d.ts.map +1 -1
  86. package/dist/teams/app/index.d.ts +1 -1
  87. package/dist/teams.js +2 -2
  88. package/dist/visio/format-pane-fields.d.ts +42 -0
  89. package/dist/visio/format-pane-view.d.ts +44 -0
  90. package/dist/visio/index.d.ts +1 -0
  91. package/dist/visio/page-setup-action.d.ts +4 -0
  92. package/dist/visio/ribbon-action.d.ts +17 -6
  93. package/dist/visio/ribbon-change-shape.d.ts +17 -6
  94. package/dist/visio/ribbon-color-menu.d.ts +29 -0
  95. package/dist/visio/ribbon-inline-galleries.d.ts +20 -0
  96. package/dist/visio/ribbon-overflow.d.ts +7 -0
  97. package/dist/visio/ribbon-review.d.ts +5 -2
  98. package/dist/visio/ribbon-router.d.ts +3 -3
  99. package/dist/visio/ribbon-shape-styles.d.ts +4 -1
  100. package/dist/visio/ribbon-style-options.d.ts +4 -3
  101. package/dist/visio/shapes-document.d.ts +29 -0
  102. package/dist/visio/shapes-sections.d.ts +19 -5
  103. package/dist/visio/shapes-storage.d.ts +15 -0
  104. package/dist/visio/shapes-window.d.ts +7 -0
  105. package/dist/visio/stencil-catalog.d.ts +4 -0
  106. package/dist/visio/text-measurer.d.ts +25 -0
  107. package/dist/visio/viewer-auto-connect-parts.d.ts +12 -0
  108. package/dist/visio/viewer-auto-connect.d.ts +33 -0
  109. package/dist/visio/viewer-change-shape.d.ts +8 -4
  110. package/dist/visio/viewer-chrome.d.ts +3 -2
  111. package/dist/visio/viewer-color-menus.d.ts +34 -0
  112. package/dist/visio/viewer-commands.d.ts +4 -3
  113. package/dist/visio/viewer-connector-tool.d.ts +5 -3
  114. package/dist/visio/viewer-data-window.d.ts +5 -1
  115. package/dist/visio/viewer-draw-tool.d.ts +1 -11
  116. package/dist/visio/viewer-element.d.ts +8 -0
  117. package/dist/visio/viewer-format-pane.d.ts +26 -0
  118. package/dist/visio/viewer-guides.d.ts +3 -3
  119. package/dist/visio/viewer-layout-commands.d.ts +5 -1
  120. package/dist/visio/viewer-more-colors.d.ts +16 -0
  121. package/dist/visio/viewer-page-setup.d.ts +6 -0
  122. package/dist/visio/viewer-ruler-grid.d.ts +25 -0
  123. package/dist/visio/viewer-ruler.d.ts +11 -3
  124. package/dist/visio/viewer-snap-glue.d.ts +23 -0
  125. package/dist/visio/viewer-stencil.d.ts +4 -1
  126. package/dist/visio.js +6688 -5303
  127. package/dist/xlsx/component.d.ts +8 -0
  128. package/dist/xlsx/dialogs/format-cells/color-swatches.d.ts +4 -2
  129. package/dist/xlsx/dialogs/styles.d.ts +1 -1
  130. package/dist/xlsx/events.d.ts +4 -1
  131. package/dist/xlsx/index.d.ts +1 -0
  132. package/dist/xlsx/ribbon/color-grid.d.ts +25 -7
  133. package/dist/xlsx/ribbon/ribbon.d.ts +3 -0
  134. package/dist/xlsx.js +121 -163
  135. package/package.json +3 -2
  136. package/dist/pptx/render/connector-router-astar.d.ts +0 -24
  137. package/dist/pptx/render/connector-router-astar.d.ts.map +0 -1
  138. package/dist/pptx/render/connector-router-graph.d.ts +0 -38
  139. package/dist/pptx/render/connector-router-graph.d.ts.map +0 -1
  140. package/dist/visio/format-shape-dialog.d.ts +0 -21
  141. package/dist/visio/viewer-format-shape.d.ts +0 -16
  142. package/dist/visio/viewer-paint-dialog.d.ts +0 -28
  143. package/dist/visio/viewer-paint-properties.d.ts +0 -13
package/README.md CHANGED
@@ -134,42 +134,44 @@ panel beside the parent, with viewport edge placement. ArrowLeft or Escape
134
134
  returns focus to its trigger; choosing a command closes the whole menu tree.
135
135
  Arrow navigation stays within the current menu and skips disabled entries.
136
136
 
137
- | Tag | Attributes / properties | Events (all bubble, composed) |
138
- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
139
- | `office-ui-button` | `label`, `icon`, `command`, `disabled`, `pressed`, `expanded`, `icon-only`, `variant="stacked"`, `keyshortcuts` | `office-command` `{ command }` |
140
- | `office-ui-checkbox`, `office-ui-switch` | `checked`, `disabled`, `value`, `aria-label`; form-associated | `input`, `change` |
141
- | `office-ui-select` | `<option>` / `<optgroup>` children (`data-display-label`, `data-description`, font previews) or the `options` property `[{ value, label, disabled? }]`; `value`, `selectedIndex`, `disabled`, `aria-label`, `variant="ribbon-font" | "ribbon-icon"`, `data-font-picker`; `icon`and`custom` slots; arrows, Home, End, PageUp/PageDown, typeahead | `input`, `change` |
142
- | `office-ui-ribbon-group` | `label`, `launcher` (dialog launcher command), `launcher-disabled`; default slot | launcher: `office-command` `{ command }` |
143
- | `office-ui-ribbon-stack` | `orientation="horizontal"`; default slot (three-row column of small commands by default) | none |
144
- | `office-ui-menu-button` / `-menu-item` | button: `label`, `icon`, `command` (split button), `variant`, `disabled`, `keyshortcuts`; item: `command`, `label`, `icon`, `disabled`, `checked` | item choice: `office-command` `{ command }` |
145
- | `office-ui-toolbar` | `aria-label`, `aria-orientation`; arrow-key focus movement | none |
146
- | `office-ui-dialog` | `open`, `heading`, `dismissible="false"`, `show()`, `close()`; slots default, `footer` | `office-dialog-close` `{ reason }` (cancelable) |
147
- | `office-ui-status-bar` / `-status-item` | `label`, `value`, `interactive`, `id`; controlled bar: `state` `{ items?, toggles?, views?, zoom? }` with `summary`, `collaboration` and `end` slots | `office-status-activate` `{ id }` |
148
- | `office-ui-zoom-slider` | `value` (percent), `min`, `max`, `step`, `disabled`, `fit` (fit button name), `label` | `input`, `change`; fit: `office-command` `{ command: 'zoom-fit' }` |
149
- | `office-ui-tab-strip` | `tabs` `[{ id, label, title? }]`, `selected`, `label`, `previous-label`, `next-label`, `add-label`, `add-disabled`, `add-title`, `disabled` | `office-tab-select` `{ id }` (cancelable); add: `office-command` `{ command: 'tab-add' }` |
150
- | `office-ui-context-menu` / `office-ui-menu-separator` | Children mode: `label`, `openAt(x, y)`, `close()`, `open` over `office-ui-menu-item` and separator children. Controlled mode: `state` `{ x, y, label, items: [{ id, label, separatorBefore?, heading?, danger?, disabled?, checked?, icon? }], markers?, zIndex?, autoFocus? }`; arrows, Home, End and type-ahead in both | children: item `office-command` `{ command }`; controlled: `office-menu-request` `{ id }`, `office-menu-close` `{ reason }` (never closes itself) |
151
- | `office-ui-command-search` | `commands` `[{ id, label, keywords?, description?, disabled?, title? }]`, `placeholder`, `label`, `limit` (Office's "Tell me what you want to do") | choice: `office-command` `{ command }` |
152
- | `office-ui-options-dialog` | `categories` `[{ id, label, description?, disabled?, sections: [{ id, title, controls }] }]` (controls: `toggle`, `select`, `number`, `text`, each optionally `disabled` with a reason), `values`, `category`, `open`, `heading`, `show()`, `close()` | OK: `office-options-change` `{ values, changed }` |
153
- | `office-ui-account` | `profile` `{ displayName, avatarColor, initial? }`; slots `sign-in` and default (product sections) | `office-profile-change` `{ profile }` |
154
- | `office-ui-ribbon` | Tab row over tab panels. Panels are children with `data-ribbon-tab`, `data-label`, optional `data-tab-keytip`; slots `quick-access`, `search`, `end`, `actions` (right end of the tab row); `selected`, `label`, `file-label`, `no-file`, `file-expanded`, `file-keytip`; `focusFile()`, `focusTab()` | `office-ribbon-select` `{ tab }` (cancelable), `office-ribbon-file` |
155
- | `office-ui-backstage` | `items` `[{ id, label, group?: 'footer', disabled?, title? }]`, `open`, `selected`, `label`, `back-label`, `show(page?)`, `close()`; pages are children with `data-backstage-page` | `office-backstage-select` `{ id }` (cancelable), `office-backstage-close` `{ reason }` (cancelable) |
156
- | `office-ui-find-bar` | `open`, `label`, `input-label`, `placeholder`, `maxlength`, `disabled`, `navigation-disabled`, `previous-label`, `next-label`, `close-label`; `value`, `status`, `statusTitle`, `show()`, `close()` | `office-find-input` `{ query }`, `office-find-step` `{ direction }`, `office-find-close` |
157
- | `office-ui-ruler` | `orientation="vertical"`, `origin` (px offset of zero), `scale` (px per unit, default 96), `direction="reverse"`; decorative | none |
158
- | `office-ui-print-preview` | `pages` (rendered nodes; an inert clone of the current one is shown), `index`, `label`, `empty-label` | `office-print-preview-page` `{ index }` |
159
- | `office-ui-radio` | `checked`, `disabled`, `value`, `name`; radios of one tag sharing a `name` form a roving-focus group; form-associated | `input`, `change` |
160
- | `office-ui-search` | `value`, `placeholder`, `disabled`, `aria-label`, `variant="titlebar"`; `focus()`, `select()` | `input`, `change` |
161
- | `office-ui-ribbon-toggle` | `label`, `checked`, `disabled`, `title`, `command` (a labelled ribbon checkbox row; static `checkboxTag` picks the inner checkbox) | `office-toggle` `{ command, checked }` |
162
- | `office-ui-dialog-footer` | `state` `{ actions: [{ id, label, variant?, icon?, disabled?, busy?, title?, align?, testId? }] }`, `focusAction(id)` | `office-dialog-footer-request` `{ id }` |
163
- | `office-ui-toasts` | `state` `{ toasts: [{ id, code?, severity, message }], overflowCount?, labels? }`; hidden when empty, host positions it | `office-toasts-request` `{ id: 'dismiss', toastId }` or `{ id: 'dismissAll' }` |
164
- | `office-ui-read-only-banner` | `state` `{ kind, message, passwordPromptOpen?, passwordError?, checkingPassword?, labels? }` | `office-read-only-request` (Edit anyway, Dismiss, password submit or cancel) |
165
- | `office-ui-paste-options` | `state` `{ left, top, options: [{ id, label }], label? }`; fixed 4px past the pasted object | `office-paste-options-request` `{ format }`, `office-paste-options-dismiss` |
166
- | `office-ui-title-bar` | `state` `{ appMark?, fileName, status?, tone?, autosave?, quickAccess?: { label, items, showLabels? }, search? }`, `placement` (`titleBar`, `belowRibbon`); slots `collaboration`, `account`; tokens `--office-title-bar-*` | `office-autosave-toggle`, `office-command` `{ command }`, `office-command-search` `{ query, command? }` |
167
- | `office-ui-ribbon-section` | `groups` `[{ id, label, commands: [{ id, label, icon, title?, size?, badge?, disabled?, active?, compact?, hidden?, caret?, pressed?, expanded?, column? }] }]`; keyed groups and commands in the light DOM | the commands' own events (`office-command`) |
168
- | `office-ui-gallery` | `state` `{ id, label, moreLabel?, disabled?, command?, sections: [{ title?, columns, tileWidth, tileHeight, items: [{ id, label, applied?, preview? }] }], inline? }`, `mode` (`inline`), `chevron-only`, `icon`; `open`, `disabled`, `close()`; tiles in light DOM (`data-gallery-item`), previews parsed by `parseSvgPreview` | `office-gallery-pick` `{ gallery, itemId }` |
169
- | `office-ui-comments-pane` | `threads` `[{ id, anchorLabel?, resolved, comments: [{ id, author, initials?, color?, created?, text, edited? }] }]`, `activeThreadId`, `read-only` (controls disabled), `list-only` (navigation list only), `closable`, `add-disabled`, `currentAuthor` (may edit own comments), `labels` (every string), `classNames` (`{ thread?, comment? }` product hook classes), `locale`; arrows, Home and End between threads, Enter or Space selects | `comment-add` `{ text }`, `comment-reply` `{ threadId, text }`, `comment-edit` `{ threadId, commentId, text }`, `comment-delete` `{ threadId, commentId }`, `thread-resolve` / `thread-reopen` / `thread-select` `{ threadId }`, `comments-close` |
170
- | `office-ui-presence` | `participants`, `max`, `label` | `office-presence-select` `{ id }` |
171
- | `office-ui-smartart` | `drawing` (core `DiagramDrawing`), `schemeColors`, `label` | `office-smartart-render` (render report) |
172
- | `office-ui-icon` | `name`, `label` | none |
137
+ | Tag | Attributes / properties | Events (all bubble, composed) |
138
+ | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
139
+ | `office-ui-button` | `label`, `icon`, `command`, `disabled`, `pressed`, `expanded`, `icon-only`, `variant="stacked"`, `keyshortcuts` | `office-command` `{ command }` |
140
+ | `office-ui-checkbox`, `office-ui-switch` | `checked`, `disabled`, `value`, `aria-label`; form-associated | `input`, `change` |
141
+ | `office-ui-select` | `<option>` / `<optgroup>` children (`data-display-label`, `data-description`, font previews) or the `options` property `[{ value, label, disabled? }]`; `value`, `selectedIndex`, `disabled`, `aria-label`, `variant="ribbon-font" | "ribbon-icon"`, `data-font-picker`; `icon`and`custom` slots; arrows, Home, End, PageUp/PageDown, typeahead | `input`, `change` |
142
+ | `office-ui-ribbon-group` | `label`, `launcher` (dialog launcher command), `launcher-disabled`; default slot | launcher: `office-command` `{ command }` |
143
+ | `office-ui-ribbon-stack` | `orientation="horizontal"`; default slot (three-row column of small commands by default) | none |
144
+ | `office-ui-menu-button` / `-menu-item` | button: `label`, `icon`, `command` (split button), `variant`, `disabled`, `keyshortcuts`; item: `command`, `label`, `icon`, `disabled`, `checked` | item choice: `office-command` `{ command }` |
145
+ | `office-ui-toolbar` | `aria-label`, `aria-orientation`; arrow-key focus movement | none |
146
+ | `office-ui-dialog` | `open`, `heading`, `dismissible="false"`, `show()`, `close()`; slots default, `footer` | `office-dialog-close` `{ reason }` (cancelable) |
147
+ | `office-ui-status-bar` / `-status-item` | `label`, `value`, `interactive`, `id`; controlled bar: `state` `{ items?, toggles?, views?, zoom? }` with `summary`, `collaboration` and `end` slots | `office-status-activate` `{ id }` |
148
+ | `office-ui-zoom-slider` | `value` (percent), `min`, `max`, `step`, `disabled`, `fit` (fit button name), `label` | `input`, `change`; fit: `office-command` `{ command: 'zoom-fit' }` |
149
+ | `office-ui-color-grid` | Office's colour picker body: `themeColors` (ten base colours; Theme Colors grid with lighter and darker variants), `themeNames` (a product's own column names), `variantLabel` (names a variant swatch, for a translated product), `extraColors` (one more theme-bound row), `standardColors`, `recentColors`, `value`, `none-label`, `automatic-label`, `more-label`, `label`, `disabled`; events `office-color-pick` `{ color, source, label, theme?, index? }` (a theme swatch reports its column and variant so a product can save a theme reference) and `office-color-more`. The palette maths is `ooxml-core/color` (`buildThemePalette`) |
150
+ | `office-ui-color-custom` | The Custom tab of Office's Colors dialog: a hue and saturation square, a luminance slider, Hex, Red/Green/Blue and Hue/Sat/Lum fields (0-255) and New over Current swatches. `value` (`#rrggbb`), `current`, `label`, `disabled`, `valid`; event `office-color-change` `{ color }` |
151
+ | `office-ui-tab-strip` | `tabs` `[{ id, label, title? }]`, `selected`, `label`, `previous-label`, `next-label`, `add-label`, `add-disabled`, `add-title`, `disabled` | `office-tab-select` `{ id }` (cancelable); add: `office-command` `{ command: 'tab-add' }` |
152
+ | `office-ui-context-menu` / `office-ui-menu-separator` | Children mode: `label`, `openAt(x, y)`, `close()`, `open` over `office-ui-menu-item` and separator children. Controlled mode: `state` `{ x, y, label, items: [{ id, label, separatorBefore?, heading?, danger?, disabled?, checked?, icon? }], markers?, zIndex?, autoFocus? }`; arrows, Home, End and type-ahead in both | children: item `office-command` `{ command }`; controlled: `office-menu-request` `{ id }`, `office-menu-close` `{ reason }` (never closes itself) |
153
+ | `office-ui-command-search` | `commands` `[{ id, label, keywords?, description?, disabled?, title? }]`, `placeholder`, `label`, `limit` (Office's "Tell me what you want to do") | choice: `office-command` `{ command }` |
154
+ | `office-ui-options-dialog` | `categories` `[{ id, label, description?, disabled?, sections: [{ id, title, controls }] }]` (controls: `toggle`, `select`, `number`, `text`, each optionally `disabled` with a reason), `values`, `category`, `open`, `heading`, `show()`, `close()` | OK: `office-options-change` `{ values, changed }` |
155
+ | `office-ui-account` | `profile` `{ displayName, avatarColor, initial? }`; slots `sign-in` and default (product sections) | `office-profile-change` `{ profile }` |
156
+ | `office-ui-ribbon` | Tab row over tab panels. Panels are children with `data-ribbon-tab`, `data-label`, optional `data-tab-keytip`; slots `quick-access`, `search`, `end`, `actions` (right end of the tab row); `selected`, `label`, `file-label`, `no-file`, `file-expanded`, `file-keytip`; `focusFile()`, `focusTab()` | `office-ribbon-select` `{ tab }` (cancelable), `office-ribbon-file` |
157
+ | `office-ui-backstage` | `items` `[{ id, label, group?: 'footer', disabled?, title? }]`, `open`, `selected`, `label`, `back-label`, `show(page?)`, `close()`; pages are children with `data-backstage-page` | `office-backstage-select` `{ id }` (cancelable), `office-backstage-close` `{ reason }` (cancelable) |
158
+ | `office-ui-find-bar` | `open`, `label`, `input-label`, `placeholder`, `maxlength`, `disabled`, `navigation-disabled`, `previous-label`, `next-label`, `close-label`; `value`, `status`, `statusTitle`, `show()`, `close()` | `office-find-input` `{ query }`, `office-find-step` `{ direction }`, `office-find-close` |
159
+ | `office-ui-ruler` | `orientation="vertical"`, `origin` (px offset of zero), `scale` (px per unit, default 96), `direction="reverse"`; decorative | none |
160
+ | `office-ui-print-preview` | `pages` (rendered nodes; an inert clone of the current one is shown), `index`, `label`, `empty-label` | `office-print-preview-page` `{ index }` |
161
+ | `office-ui-radio` | `checked`, `disabled`, `value`, `name`; radios of one tag sharing a `name` form a roving-focus group; form-associated | `input`, `change` |
162
+ | `office-ui-search` | `value`, `placeholder`, `disabled`, `aria-label`, `variant="titlebar"`; `focus()`, `select()` | `input`, `change` |
163
+ | `office-ui-ribbon-toggle` | `label`, `checked`, `disabled`, `title`, `command` (a labelled ribbon checkbox row; static `checkboxTag` picks the inner checkbox) | `office-toggle` `{ command, checked }` |
164
+ | `office-ui-dialog-footer` | `state` `{ actions: [{ id, label, variant?, icon?, disabled?, busy?, title?, align?, testId? }] }`, `focusAction(id)` | `office-dialog-footer-request` `{ id }` |
165
+ | `office-ui-toasts` | `state` `{ toasts: [{ id, code?, severity, message }], overflowCount?, labels? }`; hidden when empty, host positions it | `office-toasts-request` `{ id: 'dismiss', toastId }` or `{ id: 'dismissAll' }` |
166
+ | `office-ui-read-only-banner` | `state` `{ kind, message, passwordPromptOpen?, passwordError?, checkingPassword?, labels? }` | `office-read-only-request` (Edit anyway, Dismiss, password submit or cancel) |
167
+ | `office-ui-paste-options` | `state` `{ left, top, options: [{ id, label }], label? }`; fixed 4px past the pasted object | `office-paste-options-request` `{ format }`, `office-paste-options-dismiss` |
168
+ | `office-ui-title-bar` | `state` `{ appMark?, fileName, status?, tone?, autosave?, quickAccess?: { label, items, showLabels? }, search? }`, `placement` (`titleBar`, `belowRibbon`); slots `collaboration`, `account`; tokens `--office-title-bar-*` | `office-autosave-toggle`, `office-command` `{ command }`, `office-command-search` `{ query, command? }` |
169
+ | `office-ui-ribbon-section` | `groups` `[{ id, label, commands: [{ id, label, icon, title?, size?, badge?, disabled?, active?, compact?, hidden?, caret?, pressed?, expanded?, column? }] }]`; keyed groups and commands in the light DOM | the commands' own events (`office-command`) |
170
+ | `office-ui-gallery` | `state` `{ id, label, moreLabel?, disabled?, command?, sections: [{ title?, columns, tileWidth, tileHeight, items: [{ id, label, applied?, preview? }] }], inline? }`, `mode` (`inline`), `chevron-only`, `icon`; `open`, `disabled`, `close()`; tiles in light DOM (`data-gallery-item`), previews parsed by `parseSvgPreview` | `office-gallery-pick` `{ gallery, itemId }` |
171
+ | `office-ui-comments-pane` | `threads` `[{ id, anchorLabel?, resolved, comments: [{ id, author, initials?, color?, created?, text, edited? }] }]`, `activeThreadId`, `read-only` (controls disabled), `list-only` (navigation list only), `closable`, `add-disabled`, `currentAuthor` (may edit own comments), `labels` (every string), `classNames` (`{ thread?, comment? }` product hook classes), `locale`; arrows, Home and End between threads, Enter or Space selects | `comment-add` `{ text }`, `comment-reply` `{ threadId, text }`, `comment-edit` `{ threadId, commentId, text }`, `comment-delete` `{ threadId, commentId }`, `thread-resolve` / `thread-reopen` / `thread-select` `{ threadId }`, `comments-close` |
172
+ | `office-ui-presence` | `participants`, `max`, `label` | `office-presence-select` `{ id }` |
173
+ | `office-ui-smartart` | `drawing` (core `DiagramDrawing`), `schemeColors`, `label` | `office-smartart-render` (render report) |
174
+ | `office-ui-icon` | `name`, `label` | none |
173
175
 
174
176
  The local profile behind `office-ui-account` is stored on the device only, under one suite-wide
175
177
  key (`readOfficeProfile`, `writeOfficeProfile`, `clearOfficeProfile`), so every Office viewer on
@@ -186,6 +188,57 @@ Setting a property never emits an event; only user activation does. Controls hon
186
188
  `prefers-color-scheme`, `forced-colors: active` (system colours and a visible focus ring) and
187
189
  coarse pointers (44px targets through `--office-target-size`).
188
190
 
191
+ ## Ribbon add-in tabs
192
+
193
+ A host application can add its own ribbon tabs after a product's tabs, as an
194
+ Office add-in does (the ACROBAT tab in Visio and Excel). The tab is plain data,
195
+ and the same descriptor works in every editor: `ribbonAddIns` is a property of
196
+ `<visio-viewer>`, `<xlsx-editor>` and `<docx-editor>` and a prop of each of their
197
+ framework bindings, and a prop of the five PowerPoint viewers (which draw their
198
+ own ribbon; see `pptx-ui-ribbon-add-in` and `viewers/pptx/docs/guide/customization.md`).
199
+
200
+ ```ts
201
+ import type { RibbonAddInTab } from 'ooxml-ui';
202
+
203
+ const tab: RibbonAddInTab = {
204
+ id: 'reports',
205
+ label: 'Reports',
206
+ groups: [
207
+ {
208
+ label: 'Export',
209
+ commands: [
210
+ { id: 'export', label: 'Export', icon: 'save', run: () => exportReport() },
211
+ { id: 'options', label: 'Options', icon: 'settings', size: 'small' },
212
+ { id: 'send', label: 'Send', items: [{ id: 'send-mail', label: 'By mail' }] },
213
+ ],
214
+ },
215
+ ],
216
+ };
217
+ editor.ribbonAddIns = [tab];
218
+ editor.addEventListener('office-ribbon-add-in', (event) => {
219
+ const { tab, command } = event.detail; // 'reports', 'export'
220
+ });
221
+ ```
222
+
223
+ - A command runs its `run` callback and then dispatches the bubbling, composed
224
+ `office-ribbon-add-in` event (`{ tab, command }`) from the editor. It never
225
+ reaches the product's own command router, Tell me or key tips.
226
+ - The elements a panel is built from are defined on demand, and a panel whose
227
+ look did not change is kept across assignments, so passing a new array with
228
+ new callbacks on every render is cheap and never closes an open drop-down.
229
+ - In the PowerPoint ribbon a drop-down (`items`) is drawn as its items, and the
230
+ phone toolbar does not list host tabs.
231
+ - `size: 'small'` commands fill columns of three; `items` makes a drop-down.
232
+ `icon` is a name from the shared icon set; `registerIcon` adds your own.
233
+ - Assign a new array to change the tabs; an empty array removes them. A tab
234
+ whose id is empty, repeated or equal to a built-in tab id is skipped, so an
235
+ add-in cannot replace a product tab.
236
+ - The descriptor types and the event name are DOM-free and live in
237
+ `ooxml-core/ribbon`; `ooxml-ui` re-exports them.
238
+ - Products render the list with `syncRibbonAddIns(ribbon, tabs, options)`
239
+ (`src/ribbon/add-in-tabs.ts`); a new product editor calls it rather than
240
+ building panels itself.
241
+
189
242
  ## Design tokens
190
243
 
191
244
  Every control is token based: no colour, length, radius, font size, shadow, duration or layer
@@ -770,6 +770,243 @@
770
770
  }
771
771
  ]
772
772
  },
773
+ {
774
+ "kind": "javascript-module",
775
+ "path": "form/color-custom.ts",
776
+ "declarations": [
777
+ {
778
+ "kind": "class",
779
+ "name": "OfficeUiColorCustom",
780
+ "tagName": "office-ui-color-custom",
781
+ "customElement": true,
782
+ "description": "`<office-ui-color-custom>`: the Custom tab of Office's Colors dialog. A hue (across) and saturation (up) square, a luminance slider, Hex, Red/Green/Blue and Hue/Sat/Lum fields (0-255, as Office shows them) that follow each other, and New over Current swatches. `value` is the colour (`#rrggbb`); `current` the colour being replaced. Every change emits `office-color-change` `{ color }`. The square and the slider take the arrow keys (Shift moves in larger steps), Home and End. The element is only the body: a product puts it in its dialog.",
783
+ "attributes": [
784
+ {
785
+ "name": "current"
786
+ },
787
+ {
788
+ "name": "disabled"
789
+ },
790
+ {
791
+ "name": "label"
792
+ },
793
+ {
794
+ "name": "value"
795
+ }
796
+ ],
797
+ "members": [
798
+ {
799
+ "kind": "field",
800
+ "name": "bad"
801
+ },
802
+ {
803
+ "kind": "field",
804
+ "name": "current",
805
+ "type": {
806
+ "text": "string"
807
+ }
808
+ },
809
+ {
810
+ "kind": "field",
811
+ "name": "disabled",
812
+ "type": {
813
+ "text": "boolean"
814
+ }
815
+ },
816
+ {
817
+ "kind": "field",
818
+ "name": "hsl"
819
+ },
820
+ {
821
+ "kind": "field",
822
+ "name": "label",
823
+ "type": {
824
+ "text": "string"
825
+ }
826
+ },
827
+ {
828
+ "kind": "field",
829
+ "name": "typed"
830
+ },
831
+ {
832
+ "kind": "field",
833
+ "name": "value",
834
+ "type": {
835
+ "text": "string"
836
+ }
837
+ }
838
+ ],
839
+ "events": [
840
+ {
841
+ "name": "office-color-change"
842
+ }
843
+ ]
844
+ }
845
+ ],
846
+ "exports": [
847
+ {
848
+ "kind": "custom-element-definition",
849
+ "name": "office-ui-color-custom",
850
+ "declaration": {
851
+ "name": "OfficeUiColorCustom"
852
+ }
853
+ }
854
+ ]
855
+ },
856
+ {
857
+ "kind": "javascript-module",
858
+ "path": "form/color-grid.ts",
859
+ "declarations": [
860
+ {
861
+ "kind": "class",
862
+ "name": "OfficeUiColorGrid",
863
+ "tagName": "office-ui-color-grid",
864
+ "customElement": true,
865
+ "description": "`<office-ui-color-grid>`: Office's colour picker body. From the top: an optional `automatic-label` command (Automatic) and `none-label` command (No Fill, No Line), \"Theme Colors\" (ten columns, a base colour over its five lighter and darker variants, built from `themeColors`), \"Standard Colors\" (preceded by the `extraColors` row when a product has one, such as Visio's variant colours), \"Recent Colors\" when `recentColors` has any, and an optional `more-label` command (More Colors...). `value` (`#rrggbb`, `'none'` or `'automatic'`) marks the current choice. `themeNames` renames the ten columns and `variantLabel` names their variants (for a translated product). Choosing emits `office-color-pick` `{ color, source, label, theme?, index? }` (a theme swatch reports its column and variant, so a product can save a theme reference instead of the colour); the More Colors command emits `office-color-more`. Arrow keys move through the swatches and commands, Home and End jump to the ends; ArrowUp on the first row and ArrowDown on the last are left for a host menu. The element is only the grid: a product puts it in its own menu, popup or pane.",
866
+ "attributes": [
867
+ {
868
+ "name": "automatic-label"
869
+ },
870
+ {
871
+ "name": "disabled"
872
+ },
873
+ {
874
+ "name": "label"
875
+ },
876
+ {
877
+ "name": "more-label"
878
+ },
879
+ {
880
+ "name": "none-label"
881
+ },
882
+ {
883
+ "name": "recent-heading"
884
+ },
885
+ {
886
+ "name": "standard-heading"
887
+ },
888
+ {
889
+ "name": "theme-heading"
890
+ },
891
+ {
892
+ "name": "value"
893
+ }
894
+ ],
895
+ "members": [
896
+ {
897
+ "kind": "field",
898
+ "name": "automaticLabel",
899
+ "type": {
900
+ "text": "string"
901
+ },
902
+ "attribute": "automatic-label"
903
+ },
904
+ {
905
+ "kind": "field",
906
+ "name": "disabled",
907
+ "type": {
908
+ "text": "boolean"
909
+ }
910
+ },
911
+ {
912
+ "kind": "field",
913
+ "name": "extraColors"
914
+ },
915
+ {
916
+ "kind": "field",
917
+ "name": "label",
918
+ "type": {
919
+ "text": "string"
920
+ }
921
+ },
922
+ {
923
+ "kind": "field",
924
+ "name": "moreLabel",
925
+ "type": {
926
+ "text": "string"
927
+ },
928
+ "attribute": "more-label"
929
+ },
930
+ {
931
+ "kind": "field",
932
+ "name": "noneLabel",
933
+ "type": {
934
+ "text": "string"
935
+ },
936
+ "attribute": "none-label"
937
+ },
938
+ {
939
+ "kind": "field",
940
+ "name": "recentColors"
941
+ },
942
+ {
943
+ "kind": "field",
944
+ "name": "recentHeading",
945
+ "type": {
946
+ "text": "string"
947
+ },
948
+ "attribute": "recent-heading"
949
+ },
950
+ {
951
+ "kind": "field",
952
+ "name": "standardColors"
953
+ },
954
+ {
955
+ "kind": "field",
956
+ "name": "standardHeading",
957
+ "type": {
958
+ "text": "string"
959
+ },
960
+ "attribute": "standard-heading"
961
+ },
962
+ {
963
+ "kind": "field",
964
+ "name": "themeColors"
965
+ },
966
+ {
967
+ "kind": "field",
968
+ "name": "themeHeading",
969
+ "type": {
970
+ "text": "string"
971
+ },
972
+ "attribute": "theme-heading"
973
+ },
974
+ {
975
+ "kind": "field",
976
+ "name": "themeNames"
977
+ },
978
+ {
979
+ "kind": "field",
980
+ "name": "value",
981
+ "type": {
982
+ "text": "string"
983
+ }
984
+ },
985
+ {
986
+ "kind": "field",
987
+ "name": "variantLabel"
988
+ }
989
+ ],
990
+ "events": [
991
+ {
992
+ "name": "office-color-more"
993
+ },
994
+ {
995
+ "name": "office-color-pick"
996
+ }
997
+ ]
998
+ }
999
+ ],
1000
+ "exports": [
1001
+ {
1002
+ "kind": "custom-element-definition",
1003
+ "name": "office-ui-color-grid",
1004
+ "declaration": {
1005
+ "name": "OfficeUiColorGrid"
1006
+ }
1007
+ }
1008
+ ]
1009
+ },
773
1010
  {
774
1011
  "kind": "javascript-module",
775
1012
  "path": "menu/command-search.ts",
@@ -1501,7 +1738,7 @@
1501
1738
  "name": "OfficeUiMenuButton",
1502
1739
  "tagName": "office-ui-menu-button",
1503
1740
  "customElement": true,
1504
- "description": "Dropdown command with a menu of `office-ui-menu-item` children (Office's Find, Layers, Align). With a `command` attribute it is a split button: the main part emits that command and the caret opens the menu. Attributes: `label`, `icon`, `command`, `variant=\"stacked\"`, `icon-only`, `disabled`, `main-disabled` (split command only), `title`, `keyshortcuts`. The menu uses the top layer (`popover`) so ribbon overflow never clips it. Keyboard: Enter, Space or ArrowDown open; arrows, Home and End move; Escape and Tab close; focus returns to the trigger. Choosing an item closes the menu; its `office-command` bubbles to the host.",
1741
+ "description": "Dropdown command with a menu of `office-ui-menu-item` children (Office's Find, Layers, Align). With a `command` attribute it is a split button: the main part emits that command and the caret opens the menu. Attributes: `label`, `icon`, `command`, `variant=\"stacked\"`, `icon-only`, `disabled`, `main-disabled` (split command only), `title`, `keyshortcuts`. The menu uses the top layer (`popover`) so ribbon overflow never clips it. Keyboard: Enter, Space or ArrowDown open; arrows, Home and End move; Escape and Tab close; focus returns to the trigger. Choosing an item closes the menu; its `office-command` bubbles to the host. A child marked `data-menu-item` (a colour grid, say) takes part in that focus order through its own `focus()`.",
1505
1742
  "attributes": [
1506
1743
  {
1507
1744
  "name": "command"
@@ -2618,8 +2855,11 @@
2618
2855
  "name": "OfficeUiRuler",
2619
2856
  "tagName": "office-ui-ruler",
2620
2857
  "customElement": true,
2621
- "description": "`<office-ui-ruler>`: an Office ruler (inches by default). The product positions it and says where zero is: `origin` is the CSS-pixel offset of zero from the ruler's start edge, `scale` the CSS pixels per unit (96 at 100% for inches). `orientation=\"vertical\"` draws a side ruler; `direction=\"reverse\"` makes values grow toward the start edge, as Visio's vertical ruler grows upward from the page bottom. Page rulers add: `extent` (the ruler's own length in px, as long as the page), `marginStart` / `marginEnd` (shaded margin bands), `zoom` (the ruler is shown at that CSS zoom) and `labelsWithinMargins` (whole-unit labels only between the margins, counted up from `origin`). `markers` are draggable: the element fires `ruler-marker-move` while one is dragged (the host answers by updating `markers` to preview), then `ruler-marker-commit` on release or `ruler-marker-cancel`; all carry a `RulerMarkerEventDetail`. Without a `label` the ruler is hidden from assistive technology; with one it is an image with that name.",
2858
+ "description": "`<office-ui-ruler>`: an Office ruler (inches by default). The product positions it and says where zero is: `origin` is the CSS-pixel offset of zero from the ruler's start edge, `scale` the CSS pixels per unit (96 at 100% for inches). `orientation=\"vertical\"` draws a side ruler; `direction=\"reverse\"` makes values grow toward the start edge, as Visio's vertical ruler grows upward from the page bottom. `density` (1 by default) is the share of the subdivisions shown: 0.5 draws every second tick and 0.25 every fourth (Visio's Normal and Coarse ruler subdivisions). Page rulers add: `extent` (the ruler's own length in px, as long as the page), `marginStart` / `marginEnd` (shaded margin bands), `zoom` (the ruler is shown at that CSS zoom) and `labelsWithinMargins` (whole-unit labels only between the margins, counted up from `origin`). `markers` are draggable: the element fires `ruler-marker-move` while one is dragged (the host answers by updating `markers` to preview), then `ruler-marker-commit` on release or `ruler-marker-cancel`; all carry a `RulerMarkerEventDetail`. Without a `label` the ruler is hidden from assistive technology; with one it is an image with that name.",
2622
2859
  "attributes": [
2860
+ {
2861
+ "name": "density"
2862
+ },
2623
2863
  {
2624
2864
  "name": "direction"
2625
2865
  },
@@ -2652,6 +2892,13 @@
2652
2892
  }
2653
2893
  ],
2654
2894
  "members": [
2895
+ {
2896
+ "kind": "field",
2897
+ "name": "density",
2898
+ "type": {
2899
+ "text": "number"
2900
+ }
2901
+ },
2655
2902
  {
2656
2903
  "kind": "field",
2657
2904
  "name": "direction",
@@ -3311,7 +3558,7 @@
3311
3558
  "name": "OfficeUiTaskPane",
3312
3559
  "tagName": "office-ui-task-pane",
3313
3560
  "customElement": true,
3314
- "description": "`<office-ui-task-pane>`: a docked task pane, as Office shows Format Shape or Shape Data. A header with the `label` as its title and a close button (named by `close-label`, default \"Close <label>\"), then the slotted body. The close button emits `office-pane-close`; the host decides whether to hide the pane. The host is a `complementary` landmark named by the label.",
3561
+ "description": "`<office-ui-task-pane>`: a docked task pane, as Office shows Format Shape or Shape Data. A header with the `label` as its title and a close button (named by `close-label`, default \"Close <label>\"), then the slotted body. The close button emits `office-pane-close`; the host decides whether to hide the pane. The host is a `complementary` landmark named by the label. Parts: `header` and `body`, for a product that lays the pane out differently (a wide pane docked under the document, whose body does not scroll as a whole).",
3315
3562
  "attributes": [
3316
3563
  {
3317
3564
  "name": "close-label"
@@ -3363,7 +3610,7 @@
3363
3610
  "name": "OfficeUiTitleBar",
3364
3611
  "tagName": "office-ui-title-bar",
3365
3612
  "customElement": true,
3366
- "description": "`<office-ui-title-bar>`: Office's title bar above the ribbon (app mark, AutoSave, Quick Access Toolbar, file name and status, centred command search, `actions`, `collaboration` and `account` slots). Controlled: set `state` (`OfficeTitleBarState`, every string translated); the bar owns no effects. `placement=\"belowRibbon\"` renders only the Quick Access row and hides itself (`data-empty`) while that row is empty. Events (bubbling, composed; static names let a product subclass keep its published ones): `office-autosave-toggle`, `office-command` `{ command }` from a Quick Access button and `office-command-search` `{ query, command? }`. Override `activate(id)` to route Quick Access buttons differently and `rendered()` to mirror state onto the host. Tokens: `--office-title-bar-*`. The search query stays local to the bar, so hosts never round-trip keystrokes; they receive one request per commit.",
3613
+ "description": "`<office-ui-title-bar>`: Office's title bar above the ribbon (app mark, AutoSave, Quick Access Toolbar, file name and status, centred command search, `actions`, `collaboration` and `account` slots). Controlled: set `state` (`OfficeTitleBarState`, every string translated); the bar owns no effects. The `centered` attribute puts the file name in the middle of the bar. `placement=\"belowRibbon\"` renders only the Quick Access row and hides itself (`data-empty`) while that row is empty. Events (bubbling, composed; static names let a product subclass keep its published ones): `office-autosave-toggle`, `office-command` `{ command }` from a Quick Access button and `office-command-search` `{ query, command? }`. Override `activate(id)` to route Quick Access buttons differently and `rendered()` to mirror state onto the host. Tokens: `--office-title-bar-*`. The search query stays local to the bar, so hosts never round-trip keystrokes; they receive one request per commit.",
3367
3614
  "attributes": [
3368
3615
  {
3369
3616
  "name": "placement"
@@ -23,7 +23,9 @@ export interface RulerMarkerEventDetail {
23
23
  * and says where zero is: `origin` is the CSS-pixel offset of zero from the ruler's start edge,
24
24
  * `scale` the CSS pixels per unit (96 at 100% for inches). `orientation="vertical"` draws a
25
25
  * side ruler; `direction="reverse"` makes values grow toward the start edge, as Visio's
26
- * vertical ruler grows upward from the page bottom.
26
+ * vertical ruler grows upward from the page bottom. `density` (1 by default) is the share of the
27
+ * subdivisions shown: 0.5 draws every second tick and 0.25 every fourth (Visio's Normal and
28
+ * Coarse ruler subdivisions).
27
29
  *
28
30
  * Page rulers add: `extent` (the ruler's own length in px, as long as the page), `marginStart` /
29
31
  * `marginEnd` (shaded margin bands), `zoom` (the ruler is shown at that CSS zoom) and
@@ -49,6 +51,9 @@ export declare class OfficeUiRuler extends OfficeElement {
49
51
  direction: {
50
52
  type: StringConstructor;
51
53
  };
54
+ density: {
55
+ type: NumberConstructor;
56
+ };
52
57
  extent: {
53
58
  type: NumberConstructor;
54
59
  };
@@ -75,6 +80,7 @@ export declare class OfficeUiRuler extends OfficeElement {
75
80
  origin: number;
76
81
  scale: number;
77
82
  direction: string;
83
+ density: number;
78
84
  extent: number;
79
85
  marginStart: number;
80
86
  marginEnd: number;
@@ -1 +1 @@
1
- {"version":3,"file":"ruler.d.ts","sourceRoot":"","sources":["../../src/chrome/ruler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAiB,MAAM,SAAS,CAAC;AAKvD,2FAA2F;AAC3F,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC3B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,sFAAsF;AACtF,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,aAAa;IAC/C,OAAgB,MAAM,4BAAsB;IAC5C,OAAgB,UAAU;QACzB,WAAW;YAAI,IAAI;YAAU,OAAO;;QACpC,MAAM;YAAI,IAAI;;QACd,KAAK;YAAI,IAAI;;QACb,SAAS;YAAI,IAAI;;QACjB,MAAM;YAAI,IAAI;;QACd,WAAW;YAAI,IAAI;;QACnB,SAAS;YAAI,IAAI;;QACjB,IAAI;YAAI,IAAI;;QACZ,mBAAmB;YAAI,IAAI;;QAC3B,KAAK;YAAI,IAAI;;QACb,OAAO;YAAI,SAAS;;MACnB;IACM,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAA6B;IAE7C,cAaC;IAEQ,iBAAiB,IAAI,IAAI,CAMjC;IAEQ,oBAAoB,IAAI,IAAI,CAKpC;IAED,OAAO,CAAC,QAAQ;IAOhB,UAAmB,UAAU,IAAI,IAAI,CAUpC;IAED,UAAmB,OAAO,IAAI,IAAI,CAcjC;IAED,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,UAAU;IAqBlB,OAAO,CAAC,IAAI;IAwEZ,UAAmB,MAAM,oCAqBxB;CACD;AAED,eAAO,MAAM,WAAW,+BAAkD,CAAC"}
1
+ {"version":3,"file":"ruler.d.ts","sourceRoot":"","sources":["../../src/chrome/ruler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAiB,MAAM,SAAS,CAAC;AAKvD,2FAA2F;AAC3F,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC3B,0EAA0E;IAC1E,IAAI,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,yEAAyE;IACzE,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,sFAAsF;AACtF,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,8FAA8F;IAC9F,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,aAAc,SAAQ,aAAa;IAC/C,OAAgB,MAAM,4BAAsB;IAC5C,OAAgB,UAAU;QACzB,WAAW;YAAI,IAAI;YAAU,OAAO;;QACpC,MAAM;YAAI,IAAI;;QACd,KAAK;YAAI,IAAI;;QACb,SAAS;YAAI,IAAI;;QACjB,OAAO;YAAI,IAAI;;QACf,MAAM;YAAI,IAAI;;QACd,WAAW;YAAI,IAAI;;QACnB,SAAS;YAAI,IAAI;;QACjB,IAAI;YAAI,IAAI;;QACZ,mBAAmB;YAAI,IAAI;;QAC3B,KAAK;YAAI,IAAI;;QACb,OAAO;YAAI,SAAS;;MACnB;IACM,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,OAAO,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACxC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAA6B;IAE7C,cAcC;IAEQ,iBAAiB,IAAI,IAAI,CAMjC;IAEQ,oBAAoB,IAAI,IAAI,CAKpC;IAED,OAAO,CAAC,QAAQ;IAOhB,UAAmB,UAAU,IAAI,IAAI,CAUpC;IAED,UAAmB,OAAO,IAAI,IAAI,CAcjC;IAED,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,UAAU;IAqBlB,OAAO,CAAC,IAAI;IAyEZ,UAAmB,MAAM,oCAqBxB;CACD;AAED,eAAO,MAAM,WAAW,+BAAkD,CAAC"}
@@ -4,6 +4,8 @@ import { OfficeElement } from '../base.js';
4
4
  * header with the `label` as its title and a close button (named by `close-label`, default
5
5
  * "Close <label>"), then the slotted body. The close button emits `office-pane-close`; the host
6
6
  * decides whether to hide the pane. The host is a `complementary` landmark named by the label.
7
+ * Parts: `header` and `body`, for a product that lays the pane out differently (a wide pane
8
+ * docked under the document, whose body does not scroll as a whole).
7
9
  */
8
10
  export declare class OfficeUiTaskPane extends OfficeElement {
9
11
  static closeEvent: string;