ooxml-ui 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +40 -36
  2. package/custom-elements.json +211 -4
  3. package/dist/chrome/ruler.d.ts +60 -2
  4. package/dist/chrome/ruler.d.ts.map +1 -1
  5. package/dist/chrome/status-bar.d.ts +3 -1
  6. package/dist/chrome/status-bar.d.ts.map +1 -1
  7. package/dist/{chunk-T3HB5LMH.js → chunk-7FNDOWTX.js} +393 -15
  8. package/dist/{chunk-FLHM5Q4O.js → chunk-AYXFLBSV.js} +92 -13
  9. package/dist/{chunk-X7RINDJQ.js → chunk-JAJFLFAV.js} +1 -1
  10. package/dist/{chunk-OXKWNNNJ.js → chunk-VUB44CAJ.js} +1 -1
  11. package/dist/{chunk-JFJXBYRD.js → chunk-XNCWB2X6.js} +5 -0
  12. package/dist/{chunk-XDUYS4KK.js → chunk-Y2E22JVO.js} +1 -1
  13. package/dist/{chunk-ZV2Z4IWH.js → chunk-YK2DPYMU.js} +5 -2
  14. package/dist/{chunk-4QQASR5A.js → chunk-YP5S7DTT.js} +6 -5
  15. package/dist/comments/comments-pane.d.ts +116 -0
  16. package/dist/comments/comments-pane.d.ts.map +1 -0
  17. package/dist/comments/types.d.ts +80 -0
  18. package/dist/comments/types.d.ts.map +1 -0
  19. package/dist/controls.d.ts +4 -2
  20. package/dist/controls.d.ts.map +1 -1
  21. package/dist/controls.js +4 -4
  22. package/dist/docx/comments-panel.d.ts +8 -1
  23. package/dist/docx/image-media.d.ts +1 -1
  24. package/dist/docx/locales/en-ribbon.d.ts +1 -0
  25. package/dist/docx/locales/en.d.ts +1 -0
  26. package/dist/docx/localization-strings.d.ts +2 -1
  27. package/dist/docx/localization.d.ts +7 -1
  28. package/dist/docx/print-layout.d.ts +2 -2
  29. package/dist/docx/print-picture.d.ts +12 -0
  30. package/dist/docx/review-controller.d.ts +2 -0
  31. package/dist/docx/ruler.d.ts +7 -10
  32. package/dist/docx.js +289 -339
  33. package/dist/form/gradient-preset-gallery.d.ts +2 -2
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +8 -8
  36. package/dist/pptx/{chart-3d-view-scene-2KRQ5667.mjs → chart-3d-view-scene-6B5TOWB6.mjs} +3 -3
  37. package/dist/pptx/{chart-3d-view-scene-36DMZWZ3.cjs → chart-3d-view-scene-MJ6YNT56.cjs} +37 -37
  38. package/dist/pptx/{chunk-YOGDIDPB.mjs → chunk-AWKKC3VW.mjs} +8 -2
  39. package/dist/pptx/{chunk-XQZWZMGZ.cjs → chunk-SM3CWDIQ.cjs} +7 -17
  40. package/dist/pptx/{chunk-CJU4P5FT.cjs → chunk-STKGUT5S.cjs} +18 -12
  41. package/dist/pptx/{chunk-JSBGBVBH.mjs → chunk-VRFNAF3Q.mjs} +7 -17
  42. package/dist/pptx/{chunk-YHA6XAB3.cjs → chunk-XIQMFSNG.cjs} +1 -1
  43. package/dist/pptx/{chunk-YARCML7O.mjs → chunk-XQVKQD5Z.mjs} +294 -265
  44. package/dist/pptx/{chunk-XWE5GSE7.mjs → chunk-YI5LH5NN.mjs} +533 -428
  45. package/dist/pptx/{chunk-ADOC5JLI.mjs → chunk-YMTQLZ2I.mjs} +1 -1
  46. package/dist/pptx/{chunk-AIL3BNZS.cjs → chunk-YRHK45AB.cjs} +301 -265
  47. package/dist/pptx/{chunk-FEFQTZDM.cjs → chunk-ZK344LOB.cjs} +689 -574
  48. package/dist/pptx/dom/elements/chart.d.ts +2 -3
  49. package/dist/pptx/dom/elements/chart.d.ts.map +1 -1
  50. package/dist/pptx/dom/elements/table.d.ts.map +1 -1
  51. package/dist/pptx/dom/index.cjs +257 -246
  52. package/dist/pptx/dom/index.mjs +28 -17
  53. package/dist/pptx/export/html2canvas-clone.cjs +2 -2
  54. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  55. package/dist/pptx/i18n/index.cjs +6 -6
  56. package/dist/pptx/i18n/index.mjs +1 -1
  57. package/dist/pptx/i18n/translator.d.ts.map +1 -1
  58. package/dist/pptx/index.cjs +3035 -2991
  59. package/dist/pptx/index.mjs +5 -5
  60. package/dist/pptx/render/chart-axis-range.d.ts +7 -0
  61. package/dist/pptx/render/chart-axis-range.d.ts.map +1 -1
  62. package/dist/pptx/render/chart-axis-render.d.ts +3 -1
  63. package/dist/pptx/render/chart-axis-render.d.ts.map +1 -1
  64. package/dist/pptx/render/chart-axis-style.d.ts +5 -0
  65. package/dist/pptx/render/chart-axis-style.d.ts.map +1 -1
  66. package/dist/pptx/render/chart-axis.d.ts +1 -1
  67. package/dist/pptx/render/chart-axis.d.ts.map +1 -1
  68. package/dist/pptx/render/chart-cartesian-axes.d.ts.map +1 -1
  69. package/dist/pptx/render/chart-cartesian-bars.d.ts +3 -3
  70. package/dist/pptx/render/chart-cartesian-bars.d.ts.map +1 -1
  71. package/dist/pptx/render/chart-cartesian-percent-stacked.d.ts.map +1 -1
  72. package/dist/pptx/render/chart-cartesian.d.ts.map +1 -1
  73. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  74. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  75. package/dist/pptx/render/chart-combo.d.ts.map +1 -1
  76. package/dist/pptx/render/chart-gridlines-toggle.d.ts +13 -1
  77. package/dist/pptx/render/chart-gridlines-toggle.d.ts.map +1 -1
  78. package/dist/pptx/render/chart-helpers.d.ts +13 -13
  79. package/dist/pptx/render/chart-helpers.d.ts.map +1 -1
  80. package/dist/pptx/render/chart-horizontal-bars-helpers.d.ts +7 -3
  81. package/dist/pptx/render/chart-horizontal-bars-helpers.d.ts.map +1 -1
  82. package/dist/pptx/render/chart-horizontal-bars.d.ts.map +1 -1
  83. package/dist/pptx/render/chart-interaction-stacked.d.ts.map +1 -1
  84. package/dist/pptx/render/chart-overlays.cjs +7 -7
  85. package/dist/pptx/render/chart-overlays.mjs +1 -1
  86. package/dist/pptx/render/chart-palette.d.ts +5 -14
  87. package/dist/pptx/render/chart-palette.d.ts.map +1 -1
  88. package/dist/pptx/render/chart-quick-action-styles.d.ts +5 -3
  89. package/dist/pptx/render/chart-quick-action-styles.d.ts.map +1 -1
  90. package/dist/pptx/render/chart-scatter-x-axis.d.ts.map +1 -1
  91. package/dist/pptx/render/chart-style-palette.d.ts +52 -0
  92. package/dist/pptx/render/chart-style-palette.d.ts.map +1 -0
  93. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  94. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  95. package/dist/pptx/render/chart-view-model-bars.d.ts +31 -1
  96. package/dist/pptx/render/chart-view-model-bars.d.ts.map +1 -1
  97. package/dist/pptx/render/chart-view-model-build.d.ts.map +1 -1
  98. package/dist/pptx/render/chart-view-model.cjs +53 -41
  99. package/dist/pptx/render/chart-view-model.mjs +1 -1
  100. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  101. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  102. package/dist/pptx/render/connector-elbow-geometry.d.ts +7 -43
  103. package/dist/pptx/render/connector-elbow-geometry.d.ts.map +1 -1
  104. package/dist/pptx/render/foreign-object-svg-document.d.ts +12 -0
  105. package/dist/pptx/render/foreign-object-svg-document.d.ts.map +1 -1
  106. package/dist/pptx/render/index.d.ts +2 -0
  107. package/dist/pptx/render/index.d.ts.map +1 -1
  108. package/dist/pptx/render/table-cell-css.d.ts +3 -2
  109. package/dist/pptx/render/table-cell-css.d.ts.map +1 -1
  110. package/dist/pptx/render/table-cell-edit.d.ts +1 -1
  111. package/dist/pptx/render/table-cell-edit.d.ts.map +1 -1
  112. package/dist/pptx/render/table-cell-paragraphs.d.ts +29 -0
  113. package/dist/pptx/render/table-cell-paragraphs.d.ts.map +1 -0
  114. package/dist/pptx/render/table-style.d.ts +2 -0
  115. package/dist/pptx/render/table-style.d.ts.map +1 -1
  116. package/dist/pptx/render/title-bar.d.ts +5 -0
  117. package/dist/pptx/render/title-bar.d.ts.map +1 -1
  118. package/dist/pptx/render/viewer-root-options.d.ts +54 -0
  119. package/dist/pptx/render/viewer-root-options.d.ts.map +1 -0
  120. package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
  121. package/dist/pptx/web-components/registration-contract.d.ts.map +1 -1
  122. package/dist/presence.js +3 -3
  123. package/dist/registry.d.ts +2 -0
  124. package/dist/registry.d.ts.map +1 -1
  125. package/dist/ribbon/ribbon-tabs.d.ts +2 -1
  126. package/dist/ribbon/ribbon-tabs.d.ts.map +1 -1
  127. package/dist/smartart/smartart-svg.d.ts +3 -2
  128. package/dist/smartart.js +3 -3
  129. package/dist/suite/attachment-store.d.ts +13 -0
  130. package/dist/suite/document-store.d.ts +31 -0
  131. package/dist/suite/index.d.ts +2 -0
  132. package/dist/suite.js +132 -1
  133. package/dist/teams/app/channel-tab.d.ts +5 -0
  134. package/dist/teams/chat-composer.d.ts +3 -0
  135. package/dist/teams.js +6 -6
  136. package/dist/theme.js +2 -2
  137. package/dist/tokens.d.ts +5 -0
  138. package/dist/tokens.d.ts.map +1 -1
  139. package/dist/visio/styles/index.d.ts +2 -0
  140. package/dist/visio/styles/theme.d.ts +11 -0
  141. package/dist/visio/styles.d.ts +2 -2
  142. package/dist/visio.js +76 -25
  143. package/dist/xlsx/backstage/index.d.ts +4 -1
  144. package/dist/xlsx/backstage/pages-share.d.ts +19 -0
  145. package/dist/xlsx/backstage/parts.d.ts +3 -0
  146. package/dist/xlsx/chart-fill-binding.d.ts +2 -2
  147. package/dist/xlsx/chart-series-gradient-type.d.ts +3 -2
  148. package/dist/xlsx/collaboration-session.d.ts +9 -0
  149. package/dist/xlsx/collaboration-types.d.ts +41 -0
  150. package/dist/xlsx/collaboration.d.ts +56 -0
  151. package/dist/xlsx/component.d.ts +8 -0
  152. package/dist/xlsx/dialogs/comments-list.d.ts +4 -0
  153. package/dist/xlsx/dialogs/help-dialogs.d.ts +1 -1
  154. package/dist/xlsx/editor-core.d.ts +3 -0
  155. package/dist/xlsx/element-api.d.ts +19 -1
  156. package/dist/xlsx/events.d.ts +4 -1
  157. package/dist/xlsx/grid/remote-layer.d.ts +3 -0
  158. package/dist/xlsx/grid/sparkline.d.ts +3 -0
  159. package/dist/xlsx/grid/styles.d.ts +1 -1
  160. package/dist/xlsx/index.d.ts +1 -0
  161. package/dist/xlsx/ribbon-actions.d.ts +21 -0
  162. package/dist/xlsx/shell-commands.d.ts +1 -1
  163. package/dist/xlsx/title-bar.d.ts +4 -2
  164. package/dist/xlsx.js +712 -90
  165. package/package.json +3 -3
  166. package/dist/pptx/web-components/status-bar-styles.d.ts +0 -3
  167. package/dist/pptx/web-components/status-bar-styles.d.ts.map +0 -1
  168. package/dist/pptx/web-components/title-bar-styles.d.ts +0 -7
  169. package/dist/pptx/web-components/title-bar-styles.d.ts.map +0 -1
@@ -1 +1 @@
1
- export declare const GRID_CSS = "\n.xg-root [hidden]{display:none!important}\n.xg-root{position:relative;overflow:hidden;width:100%;height:100%;min-height:0;outline:none;\n\tbackground:var(--xve-sheet-bg,#fff);color:#000;font-family:\"Segoe UI\",system-ui,sans-serif;\n\t-webkit-user-select:none;user-select:none;contain:strict}\n.xg-scroller{position:absolute;inset:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}\n.xg-space{position:relative}\n.xg-view{position:sticky;left:0;top:0;overflow:hidden;cursor:cell;touch-action:pan-x pan-y}\n.xg-q,.xg-hbox{position:absolute;overflow:hidden}\n.xg-plane{position:absolute;left:0;top:0;will-change:transform}\n.xg-cells,.xg-lines,.xg-overlay,.xg-drawings{position:absolute;left:0;top:0}\n.xg-gl{position:absolute;background:var(--xve-grid-line,#e1e1e1)}\n.xg-c{position:absolute;box-sizing:border-box;overflow:visible}\n.xg-c[hidden],.xg-gl[hidden],.xg-hd[hidden]{display:none}\n.xg-c-over{z-index:1}\n.xg-t{position:absolute;top:0;bottom:0;display:flex;box-sizing:border-box;overflow:hidden;line-height:1.15}\n.xg-t.xg-wrap{white-space:pre-wrap;overflow-wrap:anywhere}\n.xg-t.xg-wrap>.xg-tx{display:block;width:100%}\n.xg-t.xg-vert{writing-mode:vertical-rl;text-orientation:upright}\n.xg-t.xg-over{background:var(--xve-sheet-bg,#fff)}\n.xg-c[style*=\"background-color\"]>.xg-t.xg-over,.xg-c-fill>.xg-t.xg-over{background:transparent}\n.xg-tx{display:inline-block;white-space:inherit}\n.xg-link{cursor:pointer}\n.xg-b{position:absolute;left:-1px;top:-1px;box-sizing:border-box;pointer-events:none}\n.xg-diag{position:absolute;left:0;top:0;pointer-events:none}\n.xg-db{position:absolute;left:2px;top:2px;bottom:2px;border:1px solid;box-sizing:border-box}\n.xg-ic{position:absolute;left:2px;top:50%;transform:translateY(-50%)}\n.xg-cm{position:absolute;right:0;top:0;width:0;height:0;border-left:6px solid transparent;border-top:6px solid #d13438;z-index:2}\n.xg-er{position:absolute;left:0;top:0;width:0;height:0;border-right:6px solid transparent;border-top:6px solid #107c41;z-index:2}\n.xg-overlay{pointer-events:none;z-index:3}\n.xg-shade{position:absolute;background:var(--xve-selection,rgba(33,115,70,.12))}\n.xg-outline{position:absolute;box-sizing:border-box;border:2px solid var(--xve-selection-border,#217346)}\n.xg-active{position:absolute;box-sizing:border-box;border:1px solid var(--xve-selection-border,#217346)}\n.xg-handle{position:absolute;box-sizing:border-box;background:var(--xve-selection-border,#217346);border:1px solid #fff;pointer-events:auto;cursor:crosshair}\n.xg-ants{position:absolute;box-sizing:border-box;--a:var(--xve-selection-border,#217346);\n\tbackground-image:linear-gradient(90deg,var(--a) 50%,transparent 50%),linear-gradient(90deg,var(--a) 50%,transparent 50%),linear-gradient(0deg,var(--a) 50%,transparent 50%),linear-gradient(0deg,var(--a) 50%,transparent 50%);\n\tbackground-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:8px 2px,8px 2px,2px 8px,2px 8px;\n\tbackground-position:0 0,0 100%,0 0,100% 0;animation:xg-ants .5s linear infinite}\n@keyframes xg-ants{to{background-position:8px 0,-8px 100%,0 -8px,100% 8px}}\n@media (prefers-reduced-motion:reduce){.xg-ants{animation:none}}\n.xg-fill-preview{position:absolute;box-sizing:border-box;border:1px dashed #666}\n.xg-refbox{position:absolute;box-sizing:border-box;border:2px solid}\n.xg-hbox{background:var(--xve-header-bg,#f3f3f3);z-index:4}\n.xg-hdr-plane{position:absolute;left:0;top:0;will-change:transform}\n.xg-hd{position:absolute;box-sizing:border-box;display:flex;align-items:center;justify-content:center;\n\tcolor:var(--xve-header-fg,#444);border-right:1px solid var(--xve-header-line,#d4d4d4);border-bottom:1px solid var(--xve-header-line,#d4d4d4);overflow:hidden;white-space:nowrap}\n.xg-hdr-col .xg-hd{top:0;height:100%}\n.xg-hdr-row .xg-hd{left:0;width:100%}\n.xg-hd-sel{background:var(--xve-header-active-bg,#e1e1e1);color:var(--xve-selection-border,#217346);font-weight:600}\n.xg-hdr-col .xg-hd-sel{box-shadow:inset 0 -2px 0 var(--xve-selection-border,#217346)}\n.xg-hdr-row .xg-hd-sel{box-shadow:inset -2px 0 0 var(--xve-selection-border,#217346)}\n.xg-hd-full{background:var(--xve-header-full-bg,#cde6d7);color:var(--xve-selection-border,#185c37);font-weight:600}\n.xg-hdr-col{cursor:s-resize}.xg-hdr-row{cursor:e-resize}\n.xg-hdr-col .xg-hd,.xg-hdr-row .xg-hd{cursor:inherit}\n.xg-corner{position:absolute;left:0;top:0;background:var(--xve-header-bg,#f3f3f3);z-index:5;box-sizing:border-box;\n\tborder-right:1px solid var(--xve-header-line,#d4d4d4);border-bottom:1px solid var(--xve-header-line,#d4d4d4);cursor:default}\n.xg-corner::after{content:\"\";position:absolute;right:3px;bottom:3px;border-left:9px solid transparent;border-bottom:9px solid #b4b4b4}\n.xg-freeze-h,.xg-freeze-v{position:absolute;background:var(--xve-freeze-line,#9b9b9b);z-index:6;pointer-events:none}\n.xg-col-resize{cursor:col-resize!important}.xg-row-resize{cursor:row-resize!important}\n.xg-resize-guide{position:absolute;z-index:8;border:0 dashed #666;pointer-events:none}\n.xg-editor-host{position:absolute;z-index:7;box-sizing:border-box;opacity:0;overflow:hidden;pointer-events:none;background:#fff;color:#000;line-height:1.25}\n.xg-editor-host.xg-editing{opacity:1;pointer-events:auto;overflow:visible;cursor:text;\n\tbox-shadow:0 0 0 2px var(--xve-selection-border,#217346),0 2px 6px rgba(0,0,0,.25)}\n.xg-editor-host .xg-field-backdrop,.xg-editor-host .xg-field-input{padding:1px 3px}\n.xg-sink{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;padding:0;border:0;resize:none;overflow:hidden;pointer-events:none}\n.xg-field{position:relative}\n.xg-field-backdrop,.xg-field-input{margin:0;border:0;box-sizing:border-box;font:inherit;line-height:inherit;letter-spacing:inherit;\n\tpadding:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;tab-size:4}\n.xg-field-backdrop{position:absolute;inset:0;overflow:hidden;color:inherit;pointer-events:none;visibility:hidden}\n.xg-field.xg-formula .xg-field-backdrop{visibility:visible}\n.xg-field-input{position:relative;display:block;width:100%;height:100%;resize:none;outline:none;background:transparent;color:inherit;overflow:hidden}\n.xg-field.xg-formula .xg-field-input{color:transparent;caret-color:#000}\n.xg-ref{font:inherit}\n.xg-editor-host .xg-field{width:100%;height:100%}\n.xg-dd{position:absolute;z-index:6;width:17px;height:17px;box-sizing:border-box;border:1px solid #c8c8c8;background:#f3f3f3;\n\tdisplay:flex;align-items:center;justify-content:center;cursor:default;pointer-events:auto}\n.xg-dd::before{content:\"\";border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #444}\n.xg-popup{position:absolute;z-index:20;background:var(--xve-popover,#fff);color:var(--xve-popover-foreground,#222);\n\tborder:1px solid var(--xve-border,#c8c8c8);box-shadow:0 4px 12px rgba(0,0,0,.18);font-size:13px;border-radius:4px}\n.xg-list{max-height:220px;overflow:auto;min-width:120px;padding:2px 0;margin:0;list-style:none}\n.xg-list [role=option]{padding:3px 10px;cursor:default;white-space:nowrap}\n.xg-list [aria-selected=true]{background:var(--xve-accent,#e1efe6)}\n.xg-tip{padding:6px 8px;max-width:260px;white-space:pre-wrap;background:#fffbe6;color:#222;pointer-events:none}\n.xg-tip b{display:block;margin-bottom:2px}\n.xg-alert{padding:12px 14px;max-width:340px}\n.xg-alert h3{margin:0 0 6px;font-size:14px}\n.xg-alert p{margin:0 0 10px;white-space:pre-wrap}\n.xg-alert .xg-actions{display:flex;gap:6px;justify-content:flex-end}\n.xg-alert button{min-width:64px;padding:4px 10px;border:1px solid var(--xve-border,#c8c8c8);border-radius:3px;background:var(--xve-secondary,#f3f3f3);color:inherit;font:inherit}\n.xg-alert button:first-child{background:var(--xve-selection-border,#217346);color:#fff;border-color:transparent}\n.xg-drawings{z-index:4}\n.xg-obj{position:absolute;box-sizing:border-box;pointer-events:auto;cursor:default}\n.xg-obj img,.xg-obj svg{display:block;width:100%;height:100%;pointer-events:none}\n.xg-chart svg [data-chart-series],.xg-chart svg [data-chart-part]{pointer-events:auto}\n.xg-obj.xg-chart{background:#fff;outline:1px solid #d9d9d9;outline-offset:-1px}\n.xg-obj.xg-obj-sel{outline:1px solid #8a8a8a;outline-offset:0}\n.xg-obj .xg-grip{position:absolute;width:8px;height:8px;background:#fff;border:1px solid #555;box-sizing:border-box;border-radius:50%}\n.xg-obj-unsupported{background:repeating-linear-gradient(45deg,#f6f6f6,#f6f6f6 6px,#ececec 6px,#ececec 12px);border:1px dashed #aaa;\n\tfont-size:11px;color:#555;display:flex;align-items:center;justify-content:center;text-align:center}\n.xg-obj.xg-smartart{overflow:hidden}\n.xg-obj.xg-smartart office-ui-smartart{display:block;pointer-events:none}\n.xg-smartart-placeholder{background:#fafafa;border:1px dashed #aaa;font-size:11px;color:#333;padding:4px;overflow:auto}\n.xg-smartart-nodes{margin:0;padding-left:16px}\n.xg-smartart-nodes .xg-smartart-child{margin-left:12px}\n.xg-smartart-notice{display:none;position:absolute;left:0;bottom:0;padding:1px 4px;font-size:10px;background:rgba(255,255,255,.9);color:#555;border-top-right-radius:3px}\n.xg-obj-sel .xg-smartart-notice,.xg-smartart-placeholder .xg-smartart-notice{display:block}\n.xg-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}\n";
1
+ export declare const GRID_CSS = "\n.xg-root [hidden]{display:none!important}\n.xg-root{position:relative;overflow:hidden;width:100%;height:100%;min-height:0;outline:none;\n\tbackground:var(--xve-sheet-bg,#fff);color:#000;font-family:\"Segoe UI\",system-ui,sans-serif;\n\t-webkit-user-select:none;user-select:none;contain:strict}\n.xg-scroller{position:absolute;inset:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y}\n.xg-space{position:relative}\n.xg-view{position:sticky;left:0;top:0;overflow:hidden;cursor:cell;touch-action:pan-x pan-y}\n.xg-q,.xg-hbox{position:absolute;overflow:hidden}\n.xg-plane{position:absolute;left:0;top:0;will-change:transform}\n.xg-cells,.xg-lines,.xg-overlay,.xg-drawings{position:absolute;left:0;top:0}\n.xg-gl{position:absolute;background:var(--xve-grid-line,#e1e1e1)}\n.xg-c{position:absolute;box-sizing:border-box;overflow:visible}\n.xg-c[hidden],.xg-gl[hidden],.xg-hd[hidden]{display:none}\n.xg-c-over{z-index:1}\n.xg-t{position:absolute;top:0;bottom:0;display:flex;box-sizing:border-box;overflow:hidden;line-height:1.15}\n.xg-t.xg-wrap{white-space:pre-wrap;overflow-wrap:anywhere}\n.xg-t.xg-wrap>.xg-tx{display:block;width:100%}\n.xg-t.xg-vert{writing-mode:vertical-rl;text-orientation:upright}\n.xg-t.xg-over{background:var(--xve-sheet-bg,#fff)}\n.xg-c[style*=\"background-color\"]>.xg-t.xg-over,.xg-c-fill>.xg-t.xg-over{background:transparent}\n.xg-tx{display:inline-block;white-space:inherit}\n.xg-link{cursor:pointer}\n.xg-b{position:absolute;left:-1px;top:-1px;box-sizing:border-box;pointer-events:none}\n.xg-diag{position:absolute;left:0;top:0;pointer-events:none}\n.xg-spark{position:absolute;left:0;top:0;pointer-events:none;overflow:hidden}\n.xg-db{position:absolute;left:2px;top:2px;bottom:2px;border:1px solid;box-sizing:border-box}\n.xg-ic{position:absolute;left:2px;top:50%;transform:translateY(-50%)}\n.xg-cm{position:absolute;right:0;top:0;width:0;height:0;border-left:6px solid transparent;border-top:6px solid #d13438;z-index:2}\n.xg-er{position:absolute;left:0;top:0;width:0;height:0;border-right:6px solid transparent;border-top:6px solid #107c41;z-index:2}\n.xg-overlay{pointer-events:none;z-index:3}\n.xg-shade{position:absolute;background:var(--xve-selection,rgba(33,115,70,.12))}\n.xg-outline{position:absolute;box-sizing:border-box;border:2px solid var(--xve-selection-border,#217346)}\n.xg-active{position:absolute;box-sizing:border-box;border:1px solid var(--xve-selection-border,#217346)}\n.xg-handle{position:absolute;box-sizing:border-box;background:var(--xve-selection-border,#217346);border:1px solid #fff;pointer-events:auto;cursor:crosshair}\n.xg-ants{position:absolute;box-sizing:border-box;--a:var(--xve-selection-border,#217346);\n\tbackground-image:linear-gradient(90deg,var(--a) 50%,transparent 50%),linear-gradient(90deg,var(--a) 50%,transparent 50%),linear-gradient(0deg,var(--a) 50%,transparent 50%),linear-gradient(0deg,var(--a) 50%,transparent 50%);\n\tbackground-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:8px 2px,8px 2px,2px 8px,2px 8px;\n\tbackground-position:0 0,0 100%,0 0,100% 0;animation:xg-ants .5s linear infinite}\n@keyframes xg-ants{to{background-position:8px 0,-8px 100%,0 -8px,100% 8px}}\n@media (prefers-reduced-motion:reduce){.xg-ants{animation:none}}\n.xg-fill-preview{position:absolute;box-sizing:border-box;border:1px dashed #666}\n.xg-refbox{position:absolute;box-sizing:border-box;border:2px solid}\n.xg-remote-layer{position:absolute;left:0;top:0;pointer-events:none;z-index:3}\n.xg-remote{position:absolute;box-sizing:border-box;border:2px solid}\n.xg-remote[hidden]{display:none}\n.xg-remote-tag{position:absolute;left:-2px;bottom:100%;max-width:160px;padding:0 4px;height:16px;line-height:16px;\n\tfont:600 11px/16px var(--xve-font,system-ui,sans-serif);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:2px 2px 2px 0}\n.xg-remote[data-tag=\"inside\"] .xg-remote-tag{bottom:auto;top:0;left:0;border-radius:0 0 2px 0}\n.xg-hbox{background:var(--xve-header-bg,#f3f3f3);z-index:4}\n.xg-hdr-plane{position:absolute;left:0;top:0;will-change:transform}\n.xg-hd{position:absolute;box-sizing:border-box;display:flex;align-items:center;justify-content:center;\n\tcolor:var(--xve-header-fg,#444);border-right:1px solid var(--xve-header-line,#d4d4d4);border-bottom:1px solid var(--xve-header-line,#d4d4d4);overflow:hidden;white-space:nowrap}\n.xg-hdr-col .xg-hd{top:0;height:100%}\n.xg-hdr-row .xg-hd{left:0;width:100%}\n.xg-hd-sel{background:var(--xve-header-active-bg,#e1e1e1);color:var(--xve-selection-border,#217346);font-weight:600}\n.xg-hdr-col .xg-hd-sel{box-shadow:inset 0 -2px 0 var(--xve-selection-border,#217346)}\n.xg-hdr-row .xg-hd-sel{box-shadow:inset -2px 0 0 var(--xve-selection-border,#217346)}\n.xg-hd-full{background:var(--xve-header-full-bg,#cde6d7);color:var(--xve-selection-border,#185c37);font-weight:600}\n.xg-hdr-col{cursor:s-resize}.xg-hdr-row{cursor:e-resize}\n.xg-hdr-col .xg-hd,.xg-hdr-row .xg-hd{cursor:inherit}\n.xg-corner{position:absolute;left:0;top:0;background:var(--xve-header-bg,#f3f3f3);z-index:5;box-sizing:border-box;\n\tborder-right:1px solid var(--xve-header-line,#d4d4d4);border-bottom:1px solid var(--xve-header-line,#d4d4d4);cursor:default}\n.xg-corner::after{content:\"\";position:absolute;right:3px;bottom:3px;border-left:9px solid transparent;border-bottom:9px solid #b4b4b4}\n.xg-freeze-h,.xg-freeze-v{position:absolute;background:var(--xve-freeze-line,#9b9b9b);z-index:6;pointer-events:none}\n.xg-col-resize{cursor:col-resize!important}.xg-row-resize{cursor:row-resize!important}\n.xg-resize-guide{position:absolute;z-index:8;border:0 dashed #666;pointer-events:none}\n.xg-editor-host{position:absolute;z-index:7;box-sizing:border-box;opacity:0;overflow:hidden;pointer-events:none;background:#fff;color:#000;line-height:1.25}\n.xg-editor-host.xg-editing{opacity:1;pointer-events:auto;overflow:visible;cursor:text;\n\tbox-shadow:0 0 0 2px var(--xve-selection-border,#217346),0 2px 6px rgba(0,0,0,.25)}\n.xg-editor-host .xg-field-backdrop,.xg-editor-host .xg-field-input{padding:1px 3px}\n.xg-sink{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;padding:0;border:0;resize:none;overflow:hidden;pointer-events:none}\n.xg-field{position:relative}\n.xg-field-backdrop,.xg-field-input{margin:0;border:0;box-sizing:border-box;font:inherit;line-height:inherit;letter-spacing:inherit;\n\tpadding:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;tab-size:4}\n.xg-field-backdrop{position:absolute;inset:0;overflow:hidden;color:inherit;pointer-events:none;visibility:hidden}\n.xg-field.xg-formula .xg-field-backdrop{visibility:visible}\n.xg-field-input{position:relative;display:block;width:100%;height:100%;resize:none;outline:none;background:transparent;color:inherit;overflow:hidden}\n.xg-field.xg-formula .xg-field-input{color:transparent;caret-color:#000}\n.xg-ref{font:inherit}\n.xg-editor-host .xg-field{width:100%;height:100%}\n.xg-dd{position:absolute;z-index:6;width:17px;height:17px;box-sizing:border-box;border:1px solid #c8c8c8;background:#f3f3f3;\n\tdisplay:flex;align-items:center;justify-content:center;cursor:default;pointer-events:auto}\n.xg-dd::before{content:\"\";border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid #444}\n.xg-popup{position:absolute;z-index:20;background:var(--xve-popover,#fff);color:var(--xve-popover-foreground,#222);\n\tborder:1px solid var(--xve-border,#c8c8c8);box-shadow:0 4px 12px rgba(0,0,0,.18);font-size:13px;border-radius:4px}\n.xg-list{max-height:220px;overflow:auto;min-width:120px;padding:2px 0;margin:0;list-style:none}\n.xg-list [role=option]{padding:3px 10px;cursor:default;white-space:nowrap}\n.xg-list [aria-selected=true]{background:var(--xve-accent,#e1efe6)}\n.xg-tip{padding:6px 8px;max-width:260px;white-space:pre-wrap;background:#fffbe6;color:#222;pointer-events:none}\n.xg-tip b{display:block;margin-bottom:2px}\n.xg-alert{padding:12px 14px;max-width:340px}\n.xg-alert h3{margin:0 0 6px;font-size:14px}\n.xg-alert p{margin:0 0 10px;white-space:pre-wrap}\n.xg-alert .xg-actions{display:flex;gap:6px;justify-content:flex-end}\n.xg-alert button{min-width:64px;padding:4px 10px;border:1px solid var(--xve-border,#c8c8c8);border-radius:3px;background:var(--xve-secondary,#f3f3f3);color:inherit;font:inherit}\n.xg-alert button:first-child{background:var(--xve-selection-border,#217346);color:#fff;border-color:transparent}\n.xg-drawings{z-index:4}\n.xg-obj{position:absolute;box-sizing:border-box;pointer-events:auto;cursor:default}\n.xg-obj img,.xg-obj svg{display:block;width:100%;height:100%;pointer-events:none}\n.xg-chart svg [data-chart-series],.xg-chart svg [data-chart-part]{pointer-events:auto}\n.xg-obj.xg-chart{background:#fff;outline:1px solid #d9d9d9;outline-offset:-1px}\n.xg-obj.xg-obj-sel{outline:1px solid #8a8a8a;outline-offset:0}\n.xg-obj .xg-grip{position:absolute;width:8px;height:8px;background:#fff;border:1px solid #555;box-sizing:border-box;border-radius:50%}\n.xg-obj-unsupported{background:repeating-linear-gradient(45deg,#f6f6f6,#f6f6f6 6px,#ececec 6px,#ececec 12px);border:1px dashed #aaa;\n\tfont-size:11px;color:#555;display:flex;align-items:center;justify-content:center;text-align:center}\n.xg-obj.xg-smartart{overflow:hidden}\n.xg-obj.xg-smartart office-ui-smartart{display:block;pointer-events:none}\n.xg-smartart-placeholder{background:#fafafa;border:1px dashed #aaa;font-size:11px;color:#333;padding:4px;overflow:auto}\n.xg-smartart-nodes{margin:0;padding-left:16px}\n.xg-smartart-nodes .xg-smartart-child{margin-left:12px}\n.xg-smartart-notice{display:none;position:absolute;left:0;bottom:0;padding:1px 4px;font-size:10px;background:rgba(255,255,255,.9);color:#555;border-top-right-radius:3px}\n.xg-obj-sel .xg-smartart-notice,.xg-smartart-placeholder .xg-smartart-notice{display:block}\n.xg-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}\n";
@@ -1,5 +1,6 @@
1
1
  export { XlsxEditorElement, defineXlsxEditor, type XlsxThemeColors } from './component.js';
2
2
  export { XLSX_EDITOR_EVENTS, type FileCommand, type FileCommandDetail, type SelectionChangeDetail, type XlsxEditorEventDetail, type XlsxEditorEventMap, type XlsxEditorEventName, } from './events.js';
3
+ export type { XlsxCollaborationOptions, XlsxCollaborationState, XlsxCollaborator, } from './collaboration-types.js';
3
4
  export { XLSX_EDITOR_ATTRIBUTES, DEFAULT_AUTHOR_NAME, DEFAULT_FILE_NAME, } from './editor-attributes.js';
4
5
  export { EDITOR_LOCALES, normalizeEditorLocale, type EditorLocale, type EditorLocaleInput, } from 'ooxml-core/xlsx/ui';
5
6
  export { THEME_KEYS, darkTheme as xlsxDarkTheme, lightTheme as xlsxLightTheme, themeToCssVars, type EditorThemeMode, type XlsxTheme, } from './theme/index.js';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * The controls at the right end of Excel's ribbon tab row: the Editing / Viewing selector, the
3
+ * Comments toggle and Share, in that order, as Excel 365 places them. They sit in the shared
4
+ * ribbon's `actions` slot; the title bar keeps the file name, search and the people in a shared
5
+ * session.
6
+ */
7
+ import type { EditorContext } from 'ooxml-core/xlsx/ui';
8
+ import type { XlsxCollaborationState } from './collaboration-types.js';
9
+ export interface RibbonActionsHandlers {
10
+ setReadOnly(readOnly: boolean): void;
11
+ isHidden(id: string): boolean;
12
+ /** Sharing state, for Share's pressed state; absent leaves it unpressed. */
13
+ collaboration?(): XlsxCollaborationState;
14
+ }
15
+ export interface RibbonActions {
16
+ readonly element: HTMLElement;
17
+ /** Re-reads read-only, sharing and the comments pane state. */
18
+ refresh(): void;
19
+ relocalize(): void;
20
+ }
21
+ export declare function createRibbonActions(ctx: EditorContext, handlers: RibbonActionsHandlers): RibbonActions;
@@ -3,7 +3,7 @@ import type { EditorContext } from 'ooxml-core/xlsx/ui';
3
3
  import type { FileCommand } from './events.js';
4
4
  export interface ShellCommandHandlers {
5
5
  fileCommand(command: FileCommand): void;
6
- openBackstage(page: 'info' | 'saveAs' | 'options' | 'new'): void;
6
+ openBackstage(page: 'info' | 'saveAs' | 'options' | 'new' | 'share'): void;
7
7
  showShortcuts(): void;
8
8
  formulaBarShown(): boolean;
9
9
  setFormulaBarShown(shown: boolean): void;
@@ -1,15 +1,17 @@
1
1
  import type { EditorContext } from 'ooxml-core/xlsx/ui';
2
2
  import { type TellMeHandlers } from 'ooxml-core/xlsx/ui';
3
+ import type { XlsxCollaborationState } from './collaboration-types.js';
3
4
  export type SaveState = 'saved' | 'dirty' | 'saving' | 'saved-local';
4
5
  export interface TitleBarHandlers extends TellMeHandlers {
5
6
  save(): void;
6
- setReadOnly(readOnly: boolean): void;
7
+ /** Sharing state for the presence stack; absent hides it. */
8
+ collaboration?(): XlsxCollaborationState;
7
9
  }
8
10
  export interface TitleBar {
9
11
  readonly element: HTMLElement;
10
12
  setFileName(name: string): void;
11
13
  setSaveState(state: SaveState): void;
12
- /** Re-reads read-only, undo/redo and comments state. */
14
+ /** Re-reads undo/redo and the people in a shared session. */
13
15
  refresh(): void;
14
16
  relocalize(): void;
15
17
  focusTellMe(): void;