ooxml-ui 1.22.0 → 1.23.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 (184) hide show
  1. package/dist/{chunk-REJECZGV.js → chunk-6RCASLEC.js} +1 -1
  2. package/dist/{chunk-DRBAJ5UO.js → chunk-FX6CF43K.js} +2 -1
  3. package/dist/chunk-HTIJ2EAA.js +364 -0
  4. package/dist/docx/backstage-pages.d.ts +5 -0
  5. package/dist/docx/backstage.d.ts +7 -0
  6. package/dist/docx/component.d.ts +1 -0
  7. package/dist/docx/context-menu.d.ts +6 -0
  8. package/dist/docx/customization-apply.d.ts +12 -0
  9. package/dist/docx/customization.d.ts +52 -0
  10. package/dist/docx/editor-chrome.d.ts +19 -0
  11. package/dist/docx/editor-core.d.ts +23 -1
  12. package/dist/docx/element-api.d.ts +18 -0
  13. package/dist/docx/events.d.ts +13 -2
  14. package/dist/docx/file-commands.d.ts +12 -6
  15. package/dist/docx/index.d.ts +3 -0
  16. package/dist/docx/keyboard.d.ts +2 -0
  17. package/dist/docx/shortcut-help.d.ts +2 -1
  18. package/dist/docx/title-bar.d.ts +2 -0
  19. package/dist/docx/view-options.d.ts +5 -0
  20. package/dist/docx.js +355 -108
  21. package/dist/embedding/host-backstage.d.ts +33 -0
  22. package/dist/embedding/host-menu.d.ts +33 -0
  23. package/dist/embedding/index.d.ts +3 -0
  24. package/dist/embedding/region-host.d.ts +38 -0
  25. package/dist/embedding/region-host.d.ts.map +1 -0
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.js +3 -3
  28. package/dist/parse-worker.js +3 -1
  29. package/dist/pptx/ai/index.cjs +4 -5
  30. package/dist/pptx/ai/index.mjs +2 -3
  31. package/dist/pptx/{chart-3d-view-scene-6LQRJAM3.mjs → chart-3d-view-scene-CDIMM5T3.mjs} +0 -1
  32. package/dist/pptx/{chart-3d-view-scene-FAKI4QKT.cjs → chart-3d-view-scene-RYL7F65H.cjs} +0 -1
  33. package/dist/pptx/{chat-history-idb-FJWHIDOK.cjs → chat-history-idb-PGLJPVOI.cjs} +2 -3
  34. package/dist/pptx/{chat-history-idb-XWRFLX2R.mjs → chat-history-idb-XXPB3Q4U.mjs} +1 -2
  35. package/dist/pptx/{chunk-C22MU5CA.cjs → chunk-43NFRLCD.cjs} +2 -2
  36. package/dist/pptx/{chunk-3IN66FIL.mjs → chunk-72P6AWRA.mjs} +1 -1
  37. package/dist/pptx/{chunk-ANKJE2PT.mjs → chunk-7DIZOCO4.mjs} +5 -9
  38. package/dist/pptx/{chunk-G2LGZNTI.cjs → chunk-A5MANNJR.cjs} +1 -1
  39. package/dist/pptx/{chunk-T34B6TZT.cjs → chunk-B4GBGPNL.cjs} +35 -29
  40. package/dist/pptx/{chunk-75S3RTSS.mjs → chunk-B5FR65LB.mjs} +2 -2
  41. package/dist/pptx/{chunk-LLENQTWZ.mjs → chunk-LVDF75JU.mjs} +1 -1
  42. package/dist/pptx/{chunk-VGOIAVPA.mjs → chunk-TK5LA3Z6.mjs} +441 -7154
  43. package/dist/pptx/{chunk-72NIN6QF.cjs → chunk-WX77UUR5.cjs} +418 -7099
  44. package/dist/pptx/{chunk-W7CBPO77.cjs → chunk-ZO43VVWQ.cjs} +2 -2
  45. package/dist/pptx/dom/index.cjs +220 -221
  46. package/dist/pptx/dom/index.mjs +5 -6
  47. package/dist/pptx/export/canvas-color-fix.cjs +0 -1
  48. package/dist/pptx/export/canvas-color-fix.mjs +0 -1
  49. package/dist/pptx/export/handout-layout.cjs +0 -1
  50. package/dist/pptx/export/handout-layout.mjs +0 -1
  51. package/dist/pptx/export/handout-master-chrome.cjs +0 -1
  52. package/dist/pptx/export/handout-master-chrome.mjs +0 -1
  53. package/dist/pptx/export/html-escape.cjs +0 -1
  54. package/dist/pptx/export/html-escape.mjs +0 -1
  55. package/dist/pptx/export/html2canvas-clone.cjs +2 -3
  56. package/dist/pptx/export/html2canvas-clone.mjs +1 -2
  57. package/dist/pptx/export/index.d.ts +1 -0
  58. package/dist/pptx/export/index.d.ts.map +1 -1
  59. package/dist/pptx/export/pdf-page-size.cjs +0 -1
  60. package/dist/pptx/export/pdf-page-size.mjs +0 -1
  61. package/dist/pptx/export/presentation-save.d.ts +40 -0
  62. package/dist/pptx/export/presentation-save.d.ts.map +1 -0
  63. package/dist/pptx/export/print-document.cjs +0 -1
  64. package/dist/pptx/export/print-document.mjs +0 -1
  65. package/dist/pptx/export/video-plan.cjs +0 -1
  66. package/dist/pptx/export/video-plan.mjs +0 -1
  67. package/dist/pptx/i18n/index.cjs +0 -1
  68. package/dist/pptx/i18n/index.mjs +0 -1
  69. package/dist/pptx/index.cjs +3027 -2952
  70. package/dist/pptx/index.mjs +4 -5
  71. package/dist/pptx/loader/index.cjs +0 -1
  72. package/dist/pptx/loader/index.mjs +0 -1
  73. package/dist/pptx/render/account.d.ts +8 -3
  74. package/dist/pptx/render/account.d.ts.map +1 -1
  75. package/dist/pptx/render/animation-authoring.cjs +0 -1
  76. package/dist/pptx/render/animation-authoring.mjs +0 -1
  77. package/dist/pptx/render/animation-preset-labels.cjs +0 -1
  78. package/dist/pptx/render/animation-preset-labels.mjs +0 -1
  79. package/dist/pptx/render/autosave-host-store.d.ts +28 -0
  80. package/dist/pptx/render/autosave-host-store.d.ts.map +1 -0
  81. package/dist/pptx/render/autosave-maintenance.d.ts +18 -0
  82. package/dist/pptx/render/autosave-maintenance.d.ts.map +1 -0
  83. package/dist/pptx/render/autosave-recovery.d.ts +5 -3
  84. package/dist/pptx/render/autosave-recovery.d.ts.map +1 -1
  85. package/dist/pptx/render/autosave-store.d.ts +9 -11
  86. package/dist/pptx/render/autosave-store.d.ts.map +1 -1
  87. package/dist/pptx/render/backstage.d.ts +3 -2
  88. package/dist/pptx/render/backstage.d.ts.map +1 -1
  89. package/dist/pptx/render/chart-combo-stock.cjs +0 -1
  90. package/dist/pptx/render/chart-combo-stock.mjs +0 -1
  91. package/dist/pptx/render/chart-overlays.cjs +0 -1
  92. package/dist/pptx/render/chart-overlays.mjs +0 -1
  93. package/dist/pptx/render/chart-surface-treemap.cjs +0 -1
  94. package/dist/pptx/render/chart-surface-treemap.mjs +0 -1
  95. package/dist/pptx/render/chart-view-model.cjs +0 -1
  96. package/dist/pptx/render/chart-view-model.mjs +0 -1
  97. package/dist/pptx/render/chart-waterfall-map.cjs +0 -1
  98. package/dist/pptx/render/chart-waterfall-map.mjs +0 -1
  99. package/dist/pptx/render/content-part-strokes.cjs +0 -1
  100. package/dist/pptx/render/content-part-strokes.mjs +0 -1
  101. package/dist/pptx/render/context-menu-target.cjs +0 -1
  102. package/dist/pptx/render/context-menu-target.mjs +0 -1
  103. package/dist/pptx/render/custom-fonts.cjs +0 -1
  104. package/dist/pptx/render/custom-fonts.mjs +0 -1
  105. package/dist/pptx/render/customization/customization-regions.d.ts +15 -32
  106. package/dist/pptx/render/customization/customization-regions.d.ts.map +1 -1
  107. package/dist/pptx/render/customization/customization-surfaces.d.ts.map +1 -1
  108. package/dist/pptx/render/customization/customization-types.d.ts +3 -2
  109. package/dist/pptx/render/customization/customization-types.d.ts.map +1 -1
  110. package/dist/pptx/render/customization/host-menu-commands.d.ts +6 -25
  111. package/dist/pptx/render/customization/host-menu-commands.d.ts.map +1 -1
  112. package/dist/pptx/render/element-hit-test.cjs +0 -1
  113. package/dist/pptx/render/element-hit-test.mjs +0 -1
  114. package/dist/pptx/render/font-catalog.cjs +0 -1
  115. package/dist/pptx/render/font-catalog.mjs +0 -1
  116. package/dist/pptx/render/format-painter.cjs +5 -6
  117. package/dist/pptx/render/format-painter.mjs +2 -3
  118. package/dist/pptx/render/hyperlink-security.cjs +0 -1
  119. package/dist/pptx/render/hyperlink-security.mjs +0 -1
  120. package/dist/pptx/render/image-file-insertion.cjs +0 -1
  121. package/dist/pptx/render/image-file-insertion.mjs +0 -1
  122. package/dist/pptx/render/index.d.ts +2 -0
  123. package/dist/pptx/render/index.d.ts.map +1 -1
  124. package/dist/pptx/render/ink-rendering.cjs +0 -1
  125. package/dist/pptx/render/ink-rendering.mjs +0 -1
  126. package/dist/pptx/render/inspector-helpers.cjs +13 -14
  127. package/dist/pptx/render/inspector-helpers.mjs +1 -2
  128. package/dist/pptx/render/layout-gallery.cjs +0 -1
  129. package/dist/pptx/render/layout-gallery.mjs +0 -1
  130. package/dist/pptx/render/layout-preview.cjs +0 -1
  131. package/dist/pptx/render/layout-preview.mjs +0 -1
  132. package/dist/pptx/render/model3d-scene.cjs +0 -1
  133. package/dist/pptx/render/model3d-scene.mjs +0 -1
  134. package/dist/pptx/render/paragraph-geometry-overrides.d.ts +2 -1
  135. package/dist/pptx/render/paragraph-geometry-overrides.d.ts.map +1 -1
  136. package/dist/pptx/render/presentation-print-settings.cjs +0 -1
  137. package/dist/pptx/render/presentation-print-settings.mjs +0 -1
  138. package/dist/pptx/render/remap-text.cjs +0 -1
  139. package/dist/pptx/render/remap-text.mjs +0 -1
  140. package/dist/pptx/render/ribbon-animations-state.cjs +0 -1
  141. package/dist/pptx/render/ribbon-animations-state.mjs +0 -1
  142. package/dist/pptx/render/session-restore.d.ts +4 -2
  143. package/dist/pptx/render/session-restore.d.ts.map +1 -1
  144. package/dist/pptx/render/text-case-transform.cjs +0 -1
  145. package/dist/pptx/render/text-case-transform.mjs +0 -1
  146. package/dist/pptx/render/text-style-scope.d.ts +2 -1
  147. package/dist/pptx/render/text-style-scope.d.ts.map +1 -1
  148. package/dist/pptx/render/viewer-event-payloads.d.ts +21 -0
  149. package/dist/pptx/render/viewer-event-payloads.d.ts.map +1 -0
  150. package/dist/pptx/render/viewer-props-manifest.d.ts.map +1 -1
  151. package/dist/pptx/theme/index.cjs +0 -1
  152. package/dist/pptx/theme/index.mjs +0 -1
  153. package/dist/pptx/{view-scene-CKYHS2OP.cjs → view-scene-4ZFUCP6S.cjs} +0 -1
  154. package/dist/pptx/{view-scene-BSTOVMHA.mjs → view-scene-GHBN7QMR.mjs} +0 -1
  155. package/dist/teams.js +1 -1
  156. package/dist/visio/controller.d.ts +11 -0
  157. package/dist/visio/index.d.ts +2 -0
  158. package/dist/visio/viewer-autorecover.d.ts +10 -2
  159. package/dist/visio/viewer-backstage.d.ts +23 -0
  160. package/dist/visio/viewer-commands.d.ts +2 -0
  161. package/dist/visio/viewer-context-menu.d.ts +3 -1
  162. package/dist/visio/viewer-customization.d.ts +42 -0
  163. package/dist/visio/viewer-element.d.ts +25 -0
  164. package/dist/visio/viewer-file-commands.d.ts +12 -0
  165. package/dist/visio/worker-parser.d.ts +9 -1
  166. package/dist/visio.js +351 -37
  167. package/dist/xlsx/backstage/index.d.ts +4 -0
  168. package/dist/xlsx/backstage/parts.d.ts +6 -0
  169. package/dist/xlsx/collaboration.d.ts +2 -1
  170. package/dist/xlsx/component.d.ts +9 -1
  171. package/dist/xlsx/context-menu/hidden.d.ts +9 -0
  172. package/dist/xlsx/context-menu/menu.d.ts +7 -1
  173. package/dist/xlsx/customization.d.ts +27 -0
  174. package/dist/xlsx/editor-core.d.ts +22 -0
  175. package/dist/xlsx/editor-files.d.ts +2 -4
  176. package/dist/xlsx/element-api.d.ts +10 -0
  177. package/dist/xlsx/events.d.ts +13 -7
  178. package/dist/xlsx/file-commands.d.ts +0 -5
  179. package/dist/xlsx/index.d.ts +2 -0
  180. package/dist/xlsx.js +245 -48
  181. package/package.json +3 -2
  182. package/dist/chunk-C7B7TJ2J.js +0 -112
  183. package/dist/pptx/chunk-MF3JURQN.cjs +0 -22
  184. package/dist/pptx/chunk-U5DDQYSF.mjs +0 -19
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Host File tab pages (`backstage.extraPages`) in the shared `<office-ui-backstage>`: the nav
3
+ * entries go after the built-in pages of their group, and each page body is a host region
4
+ * (`backstage.host.<id>`) mounted through `HostRegionHost` the first time it is shown. A shown
5
+ * page stays mounted (the File view hides it) until the host removes it, replaces its renderer
6
+ * or the editor is destroyed. Word, Excel and Visio share this; PowerPoint renders its own nav.
7
+ */
8
+ import { type HostBackstagePage, type HostBackstageRegionId, type HostRegionRenderer } from 'ooxml-core/embedding';
9
+ import type { OfficeBackstageItem } from '../chrome/backstage.js';
10
+ export interface HostBackstagePagesOptions<C> {
11
+ /** The context of a page's region, read every time the page is shown or refreshed. */
12
+ context(region: HostBackstageRegionId, page: HostBackstagePage<HostRegionRenderer<HTMLElement, C>>): C;
13
+ /** Class of each page container, for products that style their File view pages. */
14
+ pageClass?: string;
15
+ /** Prefix of the error logged when a renderer throws. */
16
+ label?: string;
17
+ }
18
+ export interface HostBackstagePages<C> {
19
+ /** The nav items with the host pages placed after the built-in pages of their group. */
20
+ items(builtIn: readonly OfficeBackstageItem[]): OfficeBackstageItem[];
21
+ /** Replace the host pages: containers of removed pages are torn down and removed. */
22
+ setPages(pages: readonly HostBackstagePage<HostRegionRenderer<HTMLElement, C>>[] | undefined): void;
23
+ /** True when `itemId` is a host page; mounts it (or delivers a new context) when it is. */
24
+ show(itemId: string): boolean;
25
+ /** Deliver a fresh context to every mounted page (after a locale or edit-state change). */
26
+ refresh(): void;
27
+ /** Tear every page down and remove its container. */
28
+ destroy(): void;
29
+ }
30
+ /** Manages the host pages of one File view (`backstage`, an `<office-ui-backstage>`). */
31
+ export declare function createHostBackstagePages<C extends {
32
+ readonly region: string;
33
+ }>(backstage: HTMLElement, options: HostBackstagePagesOptions<C>): HostBackstagePages<C>;
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Host context-menu commands (`contextMenu.extraCommands`) in the shared `OfficeMenuItem` model
3
+ * of `<office-ui-context-menu>`: the host groups go above and below the built-in rows, and a
4
+ * chosen host row runs its command. Word, Excel and Visio share this; PowerPoint keeps its own
5
+ * menu entries on the same core helper (`withHostMenuCommands`).
6
+ */
7
+ import { type HostMenuCommand } from 'ooxml-core/embedding';
8
+ import type { OfficeMenuItem } from '../menu/menu-model.js';
9
+ export interface HostMenuItems {
10
+ /** The rows to draw: host groups around the built-in ones. */
11
+ items: OfficeMenuItem[];
12
+ /**
13
+ * Runs host row `id` and returns true; false (doing nothing) for a built-in row, so the
14
+ * product handles it. A disabled host row is claimed but never runs.
15
+ */
16
+ run(id: string): boolean;
17
+ }
18
+ /** The menu rows with the host commands for one opening of the menu, at `context`. */
19
+ export declare function withHostMenuItems<C>(items: readonly OfficeMenuItem[], commands: readonly HostMenuCommand<C>[] | null | undefined, context: C): HostMenuItems;
20
+ /**
21
+ * Host commands in a self-managed `<office-ui-context-menu>` (one whose rows are
22
+ * `office-ui-menu-item` children): call it just before the menu opens. It replaces the host rows
23
+ * of the previous opening, puts the `top` group (and a separator) first and the `bottom` group
24
+ * last, and runs a chosen host row's command with this opening's `context`.
25
+ */
26
+ export declare function syncHostMenuChildren<C>(menu: HTMLElement, commands: readonly HostMenuCommand<C>[] | null | undefined, context: C): void;
27
+ /**
28
+ * Hides the separators of a self-managed `<office-ui-context-menu>` that its hidden rows left
29
+ * dangling, by the rule of `withoutHiddenEntries`: each kept row that starts a group shows one
30
+ * separator before it, and none shows at the top, at the bottom or twice in a row. Call it after
31
+ * rows were hidden or shown (and after `syncHostMenuChildren`).
32
+ */
33
+ export declare function tidyMenuSeparators(menu: HTMLElement): void;
@@ -0,0 +1,3 @@
1
+ export * from './host-backstage.js';
2
+ export * from './host-menu.js';
3
+ export * from './region-host.js';
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Mounts one host region renderer (`HostRegionRenderer` of `ooxml-core/embedding`) into one
3
+ * container and keeps it current. Every product hosts its regions (a File tab page, a dialog
4
+ * body, a pane) through this class, so the mount, update and teardown semantics are identical
5
+ * in Word, Excel, PowerPoint and Visio and in every framework binding; a product only decides
6
+ * WHERE the container goes.
7
+ *
8
+ * `render` remounts only when the renderer itself changes; a new context goes to `update` (a
9
+ * mount function's handle) or the `context` property (a custom element), and only when a field
10
+ * changed. A renderer that throws is caught and logged: it never takes the editor down.
11
+ */
12
+ import { type HostRegionRenderer } from 'ooxml-core/embedding';
13
+ /** Attribute every region container carries, for host CSS and tests. */
14
+ export declare const HOST_REGION_ATTRIBUTE = "data-office-region";
15
+ export interface HostRegionHostOptions {
16
+ /** Context fields that are callbacks: never compared, and always call the latest one. */
17
+ callbackKeys?: Iterable<string>;
18
+ /** The attribute the container's region id is written to (`data-office-region`). */
19
+ attribute?: string;
20
+ /** Prefix of the error logged when a renderer throws. */
21
+ label?: string;
22
+ }
23
+ /** One region container. `C` is the product's region context. */
24
+ export declare class HostRegionHost<C extends {
25
+ readonly region: string;
26
+ }> {
27
+ #private;
28
+ constructor(container: HTMLElement, options?: HostRegionHostOptions);
29
+ /** The container this host fills. */
30
+ get container(): HTMLElement;
31
+ /** True while a renderer is mounted. */
32
+ get mounted(): boolean;
33
+ /** Mount `renderer`, or deliver a changed `context` to the mounted one. */
34
+ render(renderer: HostRegionRenderer<HTMLElement, C>, latest: C): void;
35
+ /** Tear the renderer down and empty the container. */
36
+ destroy(): void;
37
+ }
38
+ //# sourceMappingURL=region-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"region-host.d.ts","sourceRoot":"","sources":["../../src/embedding/region-host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAIN,KAAK,kBAAkB,EACvB,MAAM,sBAAsB,CAAC;AAE9B,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,MAAM,WAAW,qBAAqB;IACrC,yFAAyF;IACzF,YAAY,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,iEAAiE;AACjE,qBAAa,cAAc,CAAC,CAAC,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE;;IAYhE,YAAY,SAAS,EAAE,WAAW,EAAE,OAAO,GAAE,qBAA0B,EAKtE;IAED,qCAAqC;IACrC,IAAI,SAAS,IAAI,WAAW,CAE3B;IAED,wCAAwC;IACxC,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,2EAA2E;IAC3E,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAepE;IAED,sDAAsD;IACtD,OAAO,IAAI,IAAI,CAKd;CAiDD"}
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export * from './base.js';
2
2
  export * from './controls.js';
3
3
  export * from './glyph.js';
4
4
  export * from './icons.js';
5
+ export * from './embedding/index.js';
5
6
  export * from './ribbon/add-in-tabs.js';
6
7
  export * from './presence.js';
7
8
  export * from './smartart.js';
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
- export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-REJECZGV.js';
2
- export { RIBBON_ADD_IN_EVENT, defineRibbonAddInElements, syncRibbonAddIns } from './chunk-C7B7TJ2J.js';
1
+ export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-6RCASLEC.js';
2
+ export { HOST_REGION_ATTRIBUTE, HostRegionHost, RIBBON_ADD_IN_EVENT, createHostBackstagePages, defineRibbonAddInElements, syncHostMenuChildren, syncRibbonAddIns, tidyMenuSeparators, withHostMenuItems } from './chunk-HTIJ2EAA.js';
3
3
  export { OfficeUiSmartArt, defineSmartArt, renderDiagramDrawing } from './chunk-QBXYGKPB.js';
4
- export { EMOJI, OfficeUiActivityFeed, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCalendarAgenda, OfficeUiCalendarView, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiChatSidebar, OfficeUiPeoplePicker, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, activityTime, applyTeamsProps, colorFor, createTeams, dayKind, dayLabel, defineActivityFeed, defineAppRail, defineAvatar, defineCalendarAgenda, defineCalendarView, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, defineChatSidebar, definePeoplePicker, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, formatWhen, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-DRBAJ5UO.js';
4
+ export { EMOJI, OfficeUiActivityFeed, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCalendarAgenda, OfficeUiCalendarView, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiChatSidebar, OfficeUiPeoplePicker, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, activityTime, applyTeamsProps, colorFor, createTeams, dayKind, dayLabel, defineActivityFeed, defineAppRail, defineAvatar, defineCalendarAgenda, defineCalendarView, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, defineChatSidebar, definePeoplePicker, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, formatWhen, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-FX6CF43K.js';
5
5
  export { TeamsPresentationPreview, defineTeamsPresentationPreview } from './chunk-FHO7TEWA.js';
6
6
  export { BUILDING_BLOCKS_CSS, LEGACY_OFFICE_THEME_TOKENS, THEME_CSS, THEME_STYLE_ID, installOfficeUiTheme, installOfficeUiThemeFor, legacyThemeAliases, legacyThemeBridge, prepareOfficeUiBlock, shadcnBridge, themeBridge } from './chunk-T5ARELU2.js';
7
7
  export { CONTROL_DEFINERS, DEFAULT_COMMENTS_LABELS, DEFAULT_OFFICE_PROFILE, EMPTY_MENU_STATE, OFFICE_AVATAR_SWATCHES, OFFICE_COLOR_SWATCHES, OFFICE_COLOR_SWATCH_HEXES, OFFICE_PROFILE_STORAGE_KEY, OFFICE_SYMBOLS, OFFICE_TITLE_BAR_SEARCH_LIMIT, OFFICE_TOAST_VISIBLE_LIMIT, assignKeyTips, attachKeyTips, attachRibbonGroupOverflow, clampFlyoutPosition, clampOptionNumber, clearOfficeProfile, commentInitials, createRibbonOverflow, defineAccount, defineBackstage, defineButton, defineChartPicker, defineCheckbox, defineColorCustom, defineColorGrid, defineCommandSearch, defineCommentsPane, defineContextMenu, defineDialog, defineDialogFooter, defineFindBar, defineGallery, defineIcon, defineMenuButton, defineMenuItem, defineMenuSeparator, defineOptionsDialog, definePasteOptions, definePrintPreview, defineRadio, defineReadOnlyBanner, defineRibbon, defineRibbonActions, defineRibbonGroup, defineRibbonSection, defineRibbonStack, defineRibbonToggle, defineRuler, defineSearchField, defineSelect, defineStatusBar, defineStatusItem, defineSwitch, defineSymbolPicker, defineTabStrip, defineTaskPane, defineTitleBar, defineToasts, defineToolbar, defineZoomSlider, fitRibbonGroups, formatCommentTime, glyph, nextEnabledIndex, optionText, optionsLabels, parseOfficeSymbolCode, parseSvgPreview, personalizeSection, profileInitials, readOfficeProfile, registerControls, rulerDivisions, runKeyTips, sanitizeOfficeProfile, typeAheadIndex, unavailableCategory, unavailableControl, userInterfaceSection, writeOfficeProfile } from './chunk-TJ245GDD.js';
@@ -3,13 +3,15 @@ import { loadVisio } from 'ooxml-core/visio';
3
3
 
4
4
  // src/visio/parse-worker.ts
5
5
  var worker = self;
6
+ var documentCache = {};
6
7
  worker.onmessage = async (event) => {
7
8
  if (event.origin && event.origin !== self.location.origin) return;
8
9
  try {
9
10
  const request = event.data;
10
11
  const document = request instanceof ArrayBuffer ? await loadVisio(request, { metafileConverter: convertMetafileToSvgTree }) : await loadVisio(request.bytes, {
11
12
  metafileConverter: convertMetafileToSvgTree,
12
- pages: request.pages
13
+ pages: request.pages,
14
+ documentCache
13
15
  });
14
16
  worker.postMessage({ ok: true, document });
15
17
  } catch (cause) {
@@ -1,8 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkG2LGZNTI_cjs = require('../chunk-G2LGZNTI.cjs');
3
+ var chunkA5MANNJR_cjs = require('../chunk-A5MANNJR.cjs');
4
4
  var chunkPBZWDEXQ_cjs = require('../chunk-PBZWDEXQ.cjs');
5
- require('../chunk-MF3JURQN.cjs');
6
5
  var pptx = require('ooxml-core/pptx');
7
6
  var zod = require('zod');
8
7
  var tableMerge = require('ooxml-core/pptx/editor/ai/table-merge');
@@ -1688,7 +1687,7 @@ function buildChatLogMarkdown(doc) {
1688
1687
  }
1689
1688
  return out.join("\n");
1690
1689
  }
1691
- async function collectStoredChats(store = chunkG2LGZNTI_cjs.createChatHistoryStore()) {
1690
+ async function collectStoredChats(store = chunkA5MANNJR_cjs.createChatHistoryStore()) {
1692
1691
  const summaries = await store.listChats();
1693
1692
  const chats = [];
1694
1693
  for (const summary of summaries) {
@@ -1814,7 +1813,7 @@ function deckIdFromBridge(bridge) {
1814
1813
  return `${title || "deck"}::${meta.slideCount}`;
1815
1814
  }
1816
1815
  function createAiChatHistoryController(deps) {
1817
- const store = deps.store ?? chunkG2LGZNTI_cjs.createChatHistoryStore();
1816
+ const store = deps.store ?? chunkA5MANNJR_cjs.createChatHistoryStore();
1818
1817
  let chats = [];
1819
1818
  let activeChatId = newChatId();
1820
1819
  let createdAt = Date.now();
@@ -2514,7 +2513,7 @@ function toolCanvasTarget(toolName, input) {
2514
2513
 
2515
2514
  Object.defineProperty(exports, "createChatHistoryStore", {
2516
2515
  enumerable: true,
2517
- get: function () { return chunkG2LGZNTI_cjs.createChatHistoryStore; }
2516
+ get: function () { return chunkA5MANNJR_cjs.createChatHistoryStore; }
2518
2517
  });
2519
2518
  Object.defineProperty(exports, "mergeTableElements", {
2520
2519
  enumerable: true,
@@ -1,7 +1,6 @@
1
- import { createChatHistoryStore } from '../chunk-LLENQTWZ.mjs';
2
- export { createChatHistoryStore } from '../chunk-LLENQTWZ.mjs';
1
+ import { createChatHistoryStore } from '../chunk-LVDF75JU.mjs';
2
+ export { createChatHistoryStore } from '../chunk-LVDF75JU.mjs';
3
3
  import { updateTextSegmentStyle } from '../chunk-PEDGPFLR.mjs';
4
- import '../chunk-U5DDQYSF.mjs';
5
4
  import { ThemePresets, PptxMarkdownConverter, hasTextProperties, hasShapeProperties } from 'ooxml-core/pptx';
6
5
  import { z } from 'zod';
7
6
  import { mergeTableElements } from 'ooxml-core/pptx/editor/ai/table-merge';
@@ -1,6 +1,5 @@
1
1
  import { widenPieViewModel, buildPerspCamera, createSvgEl, appendChartLegendSvg, renderChartLineSvg, renderChartTextSvg, perspBoxMatrix, pieRimPoint, perspScreenToPlaneY, resolvePieSliceShareValue, perspToScreen, roundDragValue, buildBarChart3DHoverTooltip, isChartInteractionArmed, computePieChartLayout, obliqueBarTaper } from './chunk-73OUATE4.mjs';
2
2
  import { resolveChartPalette, shade, DEFAULT_BAR_GAP_WIDTH } from './chunk-PIIYTRLE.mjs';
3
- import './chunk-U5DDQYSF.mjs';
4
3
 
5
4
  // src/pptx/render/chart-3d-shading.ts
6
5
  var FACE_SHADE_AMOUNT = {
@@ -2,7 +2,6 @@
2
2
 
3
3
  var chunkLCB46TH2_cjs = require('./chunk-LCB46TH2.cjs');
4
4
  var chunkG3UVZ5FO_cjs = require('./chunk-G3UVZ5FO.cjs');
5
- require('./chunk-MF3JURQN.cjs');
6
5
 
7
6
  // src/pptx/render/chart-3d-shading.ts
8
7
  var FACE_SHADE_AMOUNT = {
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkG2LGZNTI_cjs = require('./chunk-G2LGZNTI.cjs');
4
- require('./chunk-MF3JURQN.cjs');
3
+ var chunkA5MANNJR_cjs = require('./chunk-A5MANNJR.cjs');
5
4
 
6
5
  // src/pptx/ai/chat-history-idb.ts
7
6
  var CHAT_STORE = "chats";
@@ -50,7 +49,7 @@ function createIdbBackend(db) {
50
49
  return {
51
50
  async list(deckId) {
52
51
  const rows = await readAll(db, deckId);
53
- return rows.map(chunkG2LGZNTI_cjs.toChatSummary).sort((a, b) => b.updatedAt - a.updatedAt);
52
+ return rows.map(chunkA5MANNJR_cjs.toChatSummary).sort((a, b) => b.updatedAt - a.updatedAt);
54
53
  },
55
54
  async load(id) {
56
55
  const tx = db.transaction(CHAT_STORE, "readonly");
@@ -1,5 +1,4 @@
1
- import { toChatSummary } from './chunk-LLENQTWZ.mjs';
2
- import './chunk-U5DDQYSF.mjs';
1
+ import { toChatSummary } from './chunk-LVDF75JU.mjs';
3
2
 
4
3
  // src/pptx/ai/chat-history-idb.ts
5
4
  var CHAT_STORE = "chats";
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkT34B6TZT_cjs = require('./chunk-T34B6TZT.cjs');
3
+ var chunkB4GBGPNL_cjs = require('./chunk-B4GBGPNL.cjs');
4
4
  var pptx = require('ooxml-core/pptx');
5
5
 
6
6
  function copyFormatFromElement(element) {
@@ -77,7 +77,7 @@ function applyFormatToElement(element, format) {
77
77
  if (format.textStyle && pptx.hasTextProperties(updated)) {
78
78
  updated = {
79
79
  ...updated,
80
- ...chunkT34B6TZT_cjs.textStylePatch(updated, definedEntries(format.textStyle))
80
+ ...chunkB4GBGPNL_cjs.textStylePatch(updated, definedEntries(format.textStyle))
81
81
  };
82
82
  }
83
83
  return updated;
@@ -1,4 +1,4 @@
1
- import { textStylePatch } from './chunk-ANKJE2PT.mjs';
1
+ import { textStylePatch } from './chunk-7DIZOCO4.mjs';
2
2
  import { hasShapeProperties, hasTextProperties } from 'ooxml-core/pptx';
3
3
 
4
4
  function copyFormatFromElement(element) {
@@ -1,13 +1,13 @@
1
1
  import { textFontSizePxToPt } from './chunk-SMSCEGAE.mjs';
2
2
  import { updateTextSegmentStyle } from './chunk-PEDGPFLR.mjs';
3
- import { __reExport } from './chunk-U5DDQYSF.mjs';
4
3
  import { hasTextProperties, hasShapeProperties } from 'ooxml-core/pptx';
5
4
  import { textRunsStylePatch } from 'ooxml-core/pptx/editor/render/text-runs-style-patch';
6
5
  import { mergeTextStyleUpdate } from 'ooxml-core/pptx/editor/render/font-family-update';
7
6
  export { fontFamilyStyleUpdates, mergeTextStyleUpdate } from 'ooxml-core/pptx/editor/render/font-family-update';
8
7
  import { isContentSegment, TEXT_DECORATION_FLAGS } from 'ooxml-core/pptx/editor/render/text-content-style';
9
8
  export { TEXT_DECORATION_FLAGS, isContentSegment } from 'ooxml-core/pptx/editor/render/text-content-style';
10
- import * as text_style_scope_star from 'ooxml-core/pptx/editor/render/text-style-scope';
9
+ import { withExclusiveLineSpacing, paragraphOverridePatch } from 'ooxml-core/pptx/editor/render/text-style-scope';
10
+ export { BODY_TEXT_STYLE_KEYS, isBodyTextStyleKey, overrideParagraphIndents, overrideParagraphProperties, paragraphOverridePatch, reconcileDecorationFlags, splitTextStyleUpdate, withExclusiveLineSpacing } from 'ooxml-core/pptx/editor/render/text-style-scope';
11
11
 
12
12
  function contentSegmentsInSelection(segments, selection) {
13
13
  if (!segments) {
@@ -56,10 +56,6 @@ function textStyleFlagsOf(element, selection = null, segments) {
56
56
  return getSelectionTextStyleFlags(segments ?? element.textSegments, selection, element.textStyle);
57
57
  }
58
58
 
59
- // src/pptx/render/text-style-scope.ts
60
- var text_style_scope_exports = {};
61
- __reExport(text_style_scope_exports, text_style_scope_star);
62
-
63
59
  // src/pptx/render/inspector-helpers.ts
64
60
  var DEFAULT_FILL = "#ffffff";
65
61
  var DEFAULT_STROKE = "#000000";
@@ -110,8 +106,8 @@ function shapeStylePatch(el, changes) {
110
106
  }
111
107
  function textStylePatch(el, changes) {
112
108
  const base = hasTextProperties(el) ? el.textStyle ?? {} : {};
113
- const exclusive = (0, text_style_scope_exports.withExclusiveLineSpacing)(changes);
114
- const paragraphs = (0, text_style_scope_exports.paragraphOverridePatch)(el, exclusive);
109
+ const exclusive = withExclusiveLineSpacing(changes);
110
+ const paragraphs = paragraphOverridePatch(el, exclusive);
115
111
  const segments = paragraphs.textSegments ?? (hasTextProperties(el) ? el.textSegments : void 0);
116
112
  return {
117
113
  ...paragraphs,
@@ -144,4 +140,4 @@ function textFontFamilyPatch(el, fontFamily) {
144
140
  return textRunsPatch(el, { fontFamily });
145
141
  }
146
142
 
147
- export { DEFAULT_FONT_SIZE, contentSegmentsInSelection, fillColorOf, fontSizeOf, getSelectionTextStyleFlags, isBold, isItalic, isUnderline, nextToggleValue, shapeStylePatch, strokeColorOf, textColorOf, textFontFamilyPatch, textFontSizePatch, textStyleFlagsOf, textStylePatch, text_style_scope_exports };
143
+ export { DEFAULT_FONT_SIZE, contentSegmentsInSelection, fillColorOf, fontSizeOf, getSelectionTextStyleFlags, isBold, isItalic, isUnderline, nextToggleValue, shapeStylePatch, strokeColorOf, textColorOf, textFontFamilyPatch, textFontSizePatch, textStyleFlagsOf, textStylePatch };
@@ -92,7 +92,7 @@ function createLocalStorageBackend(namespace) {
92
92
  }
93
93
  async function resolveBackend(dbName, namespace) {
94
94
  try {
95
- const { openChatDb, createIdbBackend } = await import('./chat-history-idb-FJWHIDOK.cjs');
95
+ const { openChatDb, createIdbBackend } = await import('./chat-history-idb-PGLJPVOI.cjs');
96
96
  const db = await openChatDb(dbName);
97
97
  return createIdbBackend(db);
98
98
  } catch {
@@ -2,32 +2,11 @@
2
2
 
3
3
  var chunkWB25PCHQ_cjs = require('./chunk-WB25PCHQ.cjs');
4
4
  var chunkPBZWDEXQ_cjs = require('./chunk-PBZWDEXQ.cjs');
5
- var chunkMF3JURQN_cjs = require('./chunk-MF3JURQN.cjs');
6
5
  var pptx = require('ooxml-core/pptx');
7
6
  var textRunsStylePatch = require('ooxml-core/pptx/editor/render/text-runs-style-patch');
8
7
  var fontFamilyUpdate = require('ooxml-core/pptx/editor/render/font-family-update');
9
8
  var textContentStyle = require('ooxml-core/pptx/editor/render/text-content-style');
10
- var text_style_scope_star = require('ooxml-core/pptx/editor/render/text-style-scope');
11
-
12
- function _interopNamespace(e) {
13
- if (e && e.__esModule) return e;
14
- var n = Object.create(null);
15
- if (e) {
16
- Object.keys(e).forEach(function (k) {
17
- if (k !== 'default') {
18
- var d = Object.getOwnPropertyDescriptor(e, k);
19
- Object.defineProperty(n, k, d.get ? d : {
20
- enumerable: true,
21
- get: function () { return e[k]; }
22
- });
23
- }
24
- });
25
- }
26
- n.default = e;
27
- return Object.freeze(n);
28
- }
29
-
30
- var text_style_scope_star__namespace = /*#__PURE__*/_interopNamespace(text_style_scope_star);
9
+ var textStyleScope = require('ooxml-core/pptx/editor/render/text-style-scope');
31
10
 
32
11
  function contentSegmentsInSelection(segments, selection) {
33
12
  if (!segments) {
@@ -76,10 +55,6 @@ function textStyleFlagsOf(element, selection = null, segments) {
76
55
  return getSelectionTextStyleFlags(segments ?? element.textSegments, selection, element.textStyle);
77
56
  }
78
57
 
79
- // src/pptx/render/text-style-scope.ts
80
- var text_style_scope_exports = {};
81
- chunkMF3JURQN_cjs.__reExport(text_style_scope_exports, text_style_scope_star__namespace);
82
-
83
58
  // src/pptx/render/inspector-helpers.ts
84
59
  var DEFAULT_FILL = "#ffffff";
85
60
  var DEFAULT_STROKE = "#000000";
@@ -130,8 +105,8 @@ function shapeStylePatch(el, changes) {
130
105
  }
131
106
  function textStylePatch(el, changes) {
132
107
  const base = pptx.hasTextProperties(el) ? el.textStyle ?? {} : {};
133
- const exclusive = (0, text_style_scope_exports.withExclusiveLineSpacing)(changes);
134
- const paragraphs = (0, text_style_scope_exports.paragraphOverridePatch)(el, exclusive);
108
+ const exclusive = textStyleScope.withExclusiveLineSpacing(changes);
109
+ const paragraphs = textStyleScope.paragraphOverridePatch(el, exclusive);
135
110
  const segments = paragraphs.textSegments ?? (pptx.hasTextProperties(el) ? el.textSegments : void 0);
136
111
  return {
137
112
  ...paragraphs,
@@ -180,6 +155,38 @@ Object.defineProperty(exports, "isContentSegment", {
180
155
  enumerable: true,
181
156
  get: function () { return textContentStyle.isContentSegment; }
182
157
  });
158
+ Object.defineProperty(exports, "BODY_TEXT_STYLE_KEYS", {
159
+ enumerable: true,
160
+ get: function () { return textStyleScope.BODY_TEXT_STYLE_KEYS; }
161
+ });
162
+ Object.defineProperty(exports, "isBodyTextStyleKey", {
163
+ enumerable: true,
164
+ get: function () { return textStyleScope.isBodyTextStyleKey; }
165
+ });
166
+ Object.defineProperty(exports, "overrideParagraphIndents", {
167
+ enumerable: true,
168
+ get: function () { return textStyleScope.overrideParagraphIndents; }
169
+ });
170
+ Object.defineProperty(exports, "overrideParagraphProperties", {
171
+ enumerable: true,
172
+ get: function () { return textStyleScope.overrideParagraphProperties; }
173
+ });
174
+ Object.defineProperty(exports, "paragraphOverridePatch", {
175
+ enumerable: true,
176
+ get: function () { return textStyleScope.paragraphOverridePatch; }
177
+ });
178
+ Object.defineProperty(exports, "reconcileDecorationFlags", {
179
+ enumerable: true,
180
+ get: function () { return textStyleScope.reconcileDecorationFlags; }
181
+ });
182
+ Object.defineProperty(exports, "splitTextStyleUpdate", {
183
+ enumerable: true,
184
+ get: function () { return textStyleScope.splitTextStyleUpdate; }
185
+ });
186
+ Object.defineProperty(exports, "withExclusiveLineSpacing", {
187
+ enumerable: true,
188
+ get: function () { return textStyleScope.withExclusiveLineSpacing; }
189
+ });
183
190
  exports.DEFAULT_FONT_SIZE = DEFAULT_FONT_SIZE;
184
191
  exports.contentSegmentsInSelection = contentSegmentsInSelection;
185
192
  exports.fillColorOf = fillColorOf;
@@ -196,4 +203,3 @@ exports.textFontFamilyPatch = textFontFamilyPatch;
196
203
  exports.textFontSizePatch = textFontSizePatch;
197
204
  exports.textStyleFlagsOf = textStyleFlagsOf;
198
205
  exports.textStylePatch = textStylePatch;
199
- exports.text_style_scope_exports = text_style_scope_exports;
@@ -112,8 +112,8 @@ async function loadChart3DThree() {
112
112
 
113
113
  // src/pptx/three-view/scene-registry.ts
114
114
  var loaders = {
115
- chart: async () => (await import('./chart-3d-view-scene-6LQRJAM3.mjs')).mountChart3DView,
116
- smartart: async () => (await import('./view-scene-BSTOVMHA.mjs')).mountSmartArt3DView
115
+ chart: async () => (await import('./chart-3d-view-scene-CDIMM5T3.mjs')).mountChart3DView,
116
+ smartart: async () => (await import('./view-scene-GHBN7QMR.mjs')).mountSmartArt3DView
117
117
  };
118
118
  async function loadThreeViewScene(kind) {
119
119
  return loaders[kind]();
@@ -90,7 +90,7 @@ function createLocalStorageBackend(namespace) {
90
90
  }
91
91
  async function resolveBackend(dbName, namespace) {
92
92
  try {
93
- const { openChatDb, createIdbBackend } = await import('./chat-history-idb-XWRFLX2R.mjs');
93
+ const { openChatDb, createIdbBackend } = await import('./chat-history-idb-XXPB3Q4U.mjs');
94
94
  const db = await openChatDb(dbName);
95
95
  return createIdbBackend(db);
96
96
  } catch {