ooxml-ui 1.19.0 → 1.20.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 (120) hide show
  1. package/README.md +42 -39
  2. package/custom-elements.json +13 -2
  3. package/dist/{chunk-QEIGB73C.js → chunk-4XPAPETH.js} +4 -4
  4. package/dist/{chunk-SVRIVUWC.js → chunk-C7B7TJ2J.js} +1 -1
  5. package/dist/{chunk-ANPFMQ6E.js → chunk-QBXYGKPB.js} +1 -1
  6. package/dist/{chunk-CWBSXK7P.js → chunk-QLHCGV4C.js} +1 -1
  7. package/dist/{chunk-6Y7KR2I3.js → chunk-T5ARELU2.js} +1 -1
  8. package/dist/{chunk-SPRZIHUH.js → chunk-TJ245GDD.js} +37 -24
  9. package/dist/{chunk-KH2ZG3N6.js → chunk-UB36NYDT.js} +5 -5
  10. package/dist/{chunk-LD3K2RDN.js → chunk-XL77FR4B.js} +2 -0
  11. package/dist/{chunk-KNC2UEUR.js → chunk-YZH2QS7J.js} +1 -1
  12. package/dist/controls.d.ts +1 -1
  13. package/dist/controls.d.ts.map +1 -1
  14. package/dist/controls.js +4 -4
  15. package/dist/docx/collaboration-room.d.ts +46 -0
  16. package/dist/docx/collaboration-session.d.ts +2 -0
  17. package/dist/docx/collaboration-types.d.ts +13 -0
  18. package/dist/docx/component.d.ts +13 -0
  19. package/dist/docx/editor-core.d.ts +3 -0
  20. package/dist/docx/element-api.d.ts +3 -0
  21. package/dist/docx/events.d.ts +4 -1
  22. package/dist/docx/field-update.d.ts +8 -4
  23. package/dist/docx/form-field-view.d.ts +3 -0
  24. package/dist/docx/index.d.ts +1 -0
  25. package/dist/docx/ribbon-popover.d.ts +5 -4
  26. package/dist/docx/table-model-adapter.d.ts +2 -0
  27. package/dist/docx.js +19522 -18964
  28. package/dist/form/color-grid.d.ts +21 -2
  29. package/dist/form/color-grid.d.ts.map +1 -1
  30. package/dist/index.js +9 -9
  31. package/dist/pptx/{chunk-NDAE3JFO.cjs → chunk-3ESFHUZI.cjs} +2 -0
  32. package/dist/pptx/{chunk-OQQQ2GBW.cjs → chunk-ABDWUQRQ.cjs} +2132 -1360
  33. package/dist/pptx/{chunk-NLUVYOKN.mjs → chunk-F6P7VS5I.mjs} +2080 -1330
  34. package/dist/pptx/{chunk-UTFFX4M7.mjs → chunk-MK2ASJSY.mjs} +2 -0
  35. package/dist/pptx/dom/elements/text-warp.d.ts.map +1 -1
  36. package/dist/pptx/dom/index.cjs +217 -216
  37. package/dist/pptx/dom/index.mjs +16 -15
  38. package/dist/pptx/index.cjs +2970 -2882
  39. package/dist/pptx/index.mjs +2 -2
  40. package/dist/pptx/render/collaboration-options.d.ts +29 -0
  41. package/dist/pptx/render/collaboration-options.d.ts.map +1 -0
  42. package/dist/pptx/render/embedded-font-bytes.d.ts +27 -0
  43. package/dist/pptx/render/embedded-font-bytes.d.ts.map +1 -0
  44. package/dist/pptx/render/embedded-font-trust.d.ts +48 -0
  45. package/dist/pptx/render/embedded-font-trust.d.ts.map +1 -0
  46. package/dist/pptx/render/embedded-fonts.d.ts +8 -18
  47. package/dist/pptx/render/embedded-fonts.d.ts.map +1 -1
  48. package/dist/pptx/render/font-weight-names.d.ts +66 -0
  49. package/dist/pptx/render/font-weight-names.d.ts.map +1 -0
  50. package/dist/pptx/render/google-webfonts.d.ts +9 -4
  51. package/dist/pptx/render/google-webfonts.d.ts.map +1 -1
  52. package/dist/pptx/render/index.d.ts +3 -0
  53. package/dist/pptx/render/index.d.ts.map +1 -1
  54. package/dist/pptx/render/morph-animation.d.ts +5 -1
  55. package/dist/pptx/render/morph-animation.d.ts.map +1 -1
  56. package/dist/pptx/render/morph-image-alpha.d.ts +49 -0
  57. package/dist/pptx/render/morph-image-alpha.d.ts.map +1 -0
  58. package/dist/pptx/render/paragraph-bullet-marker-style.d.ts.map +1 -1
  59. package/dist/pptx/render/ribbon-galleries/gallery-placements.d.ts +2 -0
  60. package/dist/pptx/render/ribbon-galleries/gallery-placements.d.ts.map +1 -1
  61. package/dist/pptx/render/ribbon-galleries/gallery-registry.d.ts.map +1 -1
  62. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts +3 -1
  63. package/dist/pptx/render/ribbon-galleries/gallery-types.d.ts.map +1 -1
  64. package/dist/pptx/render/ribbon-galleries/index.d.ts +1 -0
  65. package/dist/pptx/render/ribbon-galleries/index.d.ts.map +1 -1
  66. package/dist/pptx/render/ribbon-galleries/text-warp-gallery.d.ts +19 -0
  67. package/dist/pptx/render/ribbon-galleries/text-warp-gallery.d.ts.map +1 -0
  68. package/dist/pptx/render/ribbon-help-commands.d.ts +13 -0
  69. package/dist/pptx/render/ribbon-help-commands.d.ts.map +1 -1
  70. package/dist/pptx/render/ribbon-record-commands.d.ts +4 -1
  71. package/dist/pptx/render/ribbon-record-commands.d.ts.map +1 -1
  72. package/dist/pptx/render/ribbon-slide-show-commands.d.ts +6 -0
  73. package/dist/pptx/render/ribbon-slide-show-commands.d.ts.map +1 -1
  74. package/dist/pptx/render/slide-transition-css.d.ts.map +1 -1
  75. package/dist/pptx/render/table-cell-css.d.ts +12 -0
  76. package/dist/pptx/render/table-cell-css.d.ts.map +1 -1
  77. package/dist/pptx/render/table-style.d.ts +10 -1
  78. package/dist/pptx/render/table-style.d.ts.map +1 -1
  79. package/dist/pptx/render/text-block-style.d.ts.map +1 -1
  80. package/dist/pptx/render/text-east-asian-breaks.d.ts.map +1 -1
  81. package/dist/pptx/render/text-metric-tracking.d.ts.map +1 -1
  82. package/dist/pptx/render/text-run-gradient-span.d.ts.map +1 -1
  83. package/dist/pptx/render/text-run-style.d.ts.map +1 -1
  84. package/dist/pptx/render/text-tab-layout.d.ts.map +1 -1
  85. package/dist/pptx/render/text-warp-envelope-measure.d.ts.map +1 -1
  86. package/dist/pptx/render/text-warp-outline-font-cache.d.ts +2 -1
  87. package/dist/pptx/render/text-warp-outline-font-cache.d.ts.map +1 -1
  88. package/dist/pptx/render/text-warp-outline-webfont-fetch.d.ts.map +1 -1
  89. package/dist/pptx/render/theme-color-grid.d.ts +20 -0
  90. package/dist/pptx/render/theme-color-grid.d.ts.map +1 -0
  91. package/dist/pptx/render/used-fonts.d.ts.map +1 -1
  92. package/dist/pptx/theme/index.cjs +18 -18
  93. package/dist/pptx/theme/index.mjs +1 -1
  94. package/dist/pptx/types.d.ts +5 -1
  95. package/dist/pptx/types.d.ts.map +1 -1
  96. package/dist/pptx/web-components/index.d.ts +1 -0
  97. package/dist/pptx/web-components/index.d.ts.map +1 -1
  98. package/dist/pptx/web-components/office-aliases.d.ts +9 -0
  99. package/dist/pptx/web-components/office-aliases.d.ts.map +1 -1
  100. package/dist/pptx/web-components/office-token-bridge.d.ts +1 -1
  101. package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
  102. package/dist/pptx/web-components/ribbon-gallery.d.ts +1 -0
  103. package/dist/pptx/web-components/ribbon-gallery.d.ts.map +1 -1
  104. package/dist/presence.js +3 -3
  105. package/dist/ribbon/gallery.d.ts +4 -2
  106. package/dist/ribbon/gallery.d.ts.map +1 -1
  107. package/dist/smartart.js +3 -3
  108. package/dist/teams.js +6 -6
  109. package/dist/theme.js +2 -2
  110. package/dist/tokens.d.ts +1 -0
  111. package/dist/tokens.d.ts.map +1 -1
  112. package/dist/visio/collaboration-types.d.ts +3 -0
  113. package/dist/visio/index.d.ts +1 -0
  114. package/dist/visio/viewer-element.d.ts +13 -0
  115. package/dist/visio/viewer-share-sync.d.ts +23 -0
  116. package/dist/visio/viewer-share.d.ts +20 -6
  117. package/dist/visio.js +265 -136
  118. package/dist/xlsx/collaboration-types.d.ts +7 -35
  119. package/dist/xlsx.js +19 -64
  120. package/package.json +2 -2
@@ -44,7 +44,7 @@ import { defineColorCustom } from './form/color-custom.js';
44
44
  import { defineChartPicker } from './dialog/chart-picker.js';
45
45
  export { defineAccount, defineDialogFooter, definePasteOptions, defineRadio, defineReadOnlyBanner, defineRibbonToggle, defineSearchField, defineToasts, defineBackstage, defineCommentsPane, defineFindBar, defineGallery, definePrintPreview, defineRibbon, defineRibbonActions, defineRuler, defineButton, defineCheckbox, defineCommandSearch, defineContextMenu, defineDialog, defineIcon, defineMenuButton, defineMenuItem, defineMenuSeparator, defineOptionsDialog, defineRibbonGroup, defineRibbonSection, defineRibbonStack, defineSelect, defineStatusBar, defineStatusItem, defineSwitch, defineTabStrip, defineTaskPane, defineTitleBar, defineToolbar, defineZoomSlider, defineSymbolPicker, defineColorGrid, defineColorCustom, defineChartPicker, };
46
46
  export { OFFICE_SYMBOLS, parseOfficeSymbolCode } from './form/symbol-picker.js';
47
- export type { OfficeColorPick, OfficeColorPickEvent, OfficeColorSource, OfficeUiColorGrid, } from './form/color-grid.js';
47
+ export type { OfficeColorPick, OfficeColorPickEvent, OfficeColorSource, OfficeThemeSwatchPosition, OfficeUiColorGrid, } from './form/color-grid.js';
48
48
  export type { OfficeCommandEvent } from './ribbon/button.js';
49
49
  export type { OfficeDialogCloseEvent, OfficeDialogCloseReason } from './dialog/dialog.js';
50
50
  export type { OfficeSelectOption } from './form/select.js';
@@ -1 +1 @@
1
- {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../src/controls.ts"],"names":[],"mappings":"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"}
package/dist/controls.js CHANGED
@@ -1,5 +1,5 @@
1
- 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, nextEnabledIndex, optionText, optionsLabels, parseOfficeSymbolCode, parseSvgPreview, personalizeSection, profileInitials, readOfficeProfile, registerControls, rulerDivisions, runKeyTips, sanitizeOfficeProfile, typeAheadIndex, unavailableCategory, unavailableControl, userInterfaceSection, writeOfficeProfile } from './chunk-SPRZIHUH.js';
1
+ 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, nextEnabledIndex, optionText, optionsLabels, parseOfficeSymbolCode, parseSvgPreview, personalizeSection, profileInitials, readOfficeProfile, registerControls, rulerDivisions, runKeyTips, sanitizeOfficeProfile, typeAheadIndex, unavailableCategory, unavailableControl, userInterfaceSection, writeOfficeProfile } from './chunk-TJ245GDD.js';
2
2
  import './chunk-M6GF5ED2.js';
3
- import './chunk-KNC2UEUR.js';
4
- import './chunk-CWBSXK7P.js';
5
- import './chunk-LD3K2RDN.js';
3
+ import './chunk-YZH2QS7J.js';
4
+ import './chunk-QLHCGV4C.js';
5
+ import './chunk-XL77FR4B.js';
@@ -0,0 +1,46 @@
1
+ import { type CollabSession } from 'ooxml-core/collab';
2
+ import type { WordYjsOptions } from 'ooxml-core/docx/ui';
3
+ import type { EditorCore } from './editor-core.js';
4
+ import { type DocxCollaborationOptions, type DocxCollaborationState } from './collaboration-types.js';
5
+ /** What the controller needs from the editor. */
6
+ export interface RoomHost {
7
+ /** The editor is mounted with a view the document can be bound to. */
8
+ ready(): boolean;
9
+ /** A document is being loaded; joining waits for it. */
10
+ loading(): boolean;
11
+ author(): string;
12
+ join(session: CollabSession, options: WordYjsOptions): void;
13
+ leave(): void;
14
+ error(error: Error): void;
15
+ changed(state: DocxCollaborationState): void;
16
+ }
17
+ export declare class DocxRoom {
18
+ #private;
19
+ private readonly host;
20
+ constructor(host: RoomHost);
21
+ /** The options of the declarative `collaboration` property, if set. */
22
+ get wanted(): DocxCollaborationOptions | undefined;
23
+ /** Joined or joining through the property. */
24
+ get busy(): boolean;
25
+ /** The session of a join still waiting to bind, for `reconnectCollaboration`. */
26
+ get pendingSession(): CollabSession | undefined;
27
+ /** Declarative sharing: while set, the open document is shared; undefined leaves. */
28
+ want(options: DocxCollaborationOptions | undefined): void;
29
+ /** Forgets the property and leaves. True when there was anything to leave. */
30
+ stop(): boolean;
31
+ /** Leaves before the document is replaced; true when it was shared through the property. */
32
+ suspend(): boolean;
33
+ /** Joins the wanted room with the document now open. */
34
+ resume(): void;
35
+ /** The Yjs binding started or stopped (through the property or `startYjsCollaboration`). */
36
+ yjsChanged(session: CollabSession | undefined): void;
37
+ state(): DocxCollaborationState;
38
+ /** Leaves the room; a session the host passed in stays alive, one made here is destroyed. */
39
+ leave(): void;
40
+ }
41
+ /** Binds the open document to a synchronized session (the body of `startYjsCollaboration`). */
42
+ export declare function joinYjs(core: EditorCore, session: CollabSession, options: WordYjsOptions): void;
43
+ /** Detaches the Yjs binding, keeping its current content, comments and new picture parts. */
44
+ export declare function leaveYjs(core: EditorCore): void;
45
+ /** The controller of one editor, reporting through its events and error channel. */
46
+ export declare function roomFor(core: EditorCore): DocxRoom;
@@ -12,6 +12,8 @@ export declare class CollaborationSession {
12
12
  yjs?: WordYjsCollaboration | undefined;
13
13
  presence?: EditorPresence | undefined;
14
14
  ids?: ((kind: string) => string) | undefined;
15
+ /** Called after a Yjs binding starts (with its session) or stops (undefined). */
16
+ onYjsChange?: ((session: CollabSession | undefined) => void) | undefined;
15
17
  private sendScheduled;
16
18
  constructor(element: HTMLElement, getView: () => EditorView | undefined);
17
19
  get active(): boolean;
@@ -0,0 +1,13 @@
1
+ import type { CollaborationOptions, CollaborationState, Collaborator } from 'ooxml-core/collab';
2
+ /**
3
+ * How to join a shared document (see `CollaborationOptions`): `session`, `provider`, `serverUrl`,
4
+ * else a BroadcastChannel. The user name defaults to `reviewAuthor`. The room name doubles as the
5
+ * Word `documentId`, so every participant must have loaded the same source package. `intent:
6
+ * 'join'` never seeds an empty room; anything else lets this window seed it.
7
+ */
8
+ export type DocxCollaborationOptions = CollaborationOptions;
9
+ /** One person in the room, as `collaboration-change` lists them. */
10
+ export type DocxCollaborator = Collaborator;
11
+ /** Collaboration state, reported by `collaborationState` and the `collaboration-change` event. */
12
+ export type DocxCollaborationState = CollaborationState;
13
+ export declare const OFF_STATE: DocxCollaborationState;
@@ -1,6 +1,7 @@
1
1
  import type { DocumentModel } from 'ooxml-core/docx';
2
2
  import type { CollaborationConfig, ClientReceiveResult, StepBatch } from 'ooxml-core/docx/ui';
3
3
  import { type EditorTheme, type EditorThemeMode } from 'ooxml-core/docx/ui';
4
+ import type { DocxCollaborationOptions } from './collaboration-types.js';
4
5
  import { EditorCore, type LoadedDocument } from './editor-core.js';
5
6
  import { DocxEditorApi } from './element-api.js';
6
7
  import { type DocxEditorEventMap } from './events.js';
@@ -42,6 +43,18 @@ export declare class DocxEditorElement extends DocxEditorApi {
42
43
  set documentModel(value: DocumentModel | null);
43
44
  get readOnly(): boolean;
44
45
  set readOnly(value: boolean);
46
+ /**
47
+ * Shares the loaded document in a room while set; `null` leaves (see
48
+ * `DocxCollaborationOptions`). A document loaded later is shared too: the editor leaves
49
+ * before it is replaced and rejoins after. With `intent: 'join'` an empty room is never seeded.
50
+ * Race: with the default `create`, two windows that open one empty room at the same moment both
51
+ * seed it and the room holds both bodies, so give exactly one window `create` and the others
52
+ * `join`. A room name is also the Word `documentId`: nothing verifies that every window
53
+ * loaded the same source package. A viewer `user.role` blocks local edits (advisory).
54
+ * Leaving keeps the content; a session the editor opened is destroyed, a host `session` is not.
55
+ */
56
+ get collaboration(): DocxCollaborationOptions | null;
57
+ set collaboration(value: DocxCollaborationOptions | null | undefined);
45
58
  connectedCallback(): void;
46
59
  disconnectedCallback(): void;
47
60
  load(input: Uint8Array | ArrayBuffer): Promise<void>;
@@ -6,6 +6,7 @@ import type { DocumentModel } from 'ooxml-core/docx';
6
6
  import type { loadDocument } from 'ooxml-core/docx/load';
7
7
  import type { SearchPanelHandle } from './search-panel.js';
8
8
  import { CollaborationSession } from './collaboration-session.js';
9
+ import { type DocxRoom } from './collaboration-room.js';
9
10
  import type { EditorTheme, EditorThemeMode } from 'ooxml-core/docx/ui';
10
11
  import type { EditorLocale } from './localization.js';
11
12
  import type { PrintEditingBridge } from './print-editing.js';
@@ -71,6 +72,8 @@ export declare class EditorCore {
71
72
  pendingFileName?: string;
72
73
  readonly shell: ShellParts;
73
74
  readonly collab: CollaborationSession;
75
+ /** The declarative `collaboration` property and the Yjs state reporting. */
76
+ readonly room: DocxRoom;
74
77
  readonly inserts: InsertController;
75
78
  readonly formatDialogs: FormatDialogs;
76
79
  readonly imageMedia: ImageMediaCache;
@@ -1,6 +1,7 @@
1
1
  import type { RibbonAddInTab } from '../ribbon/add-in-tabs.js';
2
2
  import type { CollabSession } from 'ooxml-core/collab';
3
3
  import type { WordYjsOptions } from 'ooxml-core/docx/ui';
4
+ import type { DocxCollaborationState } from './collaboration-types.js';
4
5
  import type { EditorCore } from './editor-core.js';
5
6
  import { type RibbonActionId, type RibbonActionInput } from 'ooxml-core/docx/ui';
6
7
  import { type WordToolbarProps } from './building-blocks.js';
@@ -22,6 +23,8 @@ export declare abstract class DocxEditorApi extends HTMLElementBase {
22
23
  abstract reviewAuthor: string;
23
24
  /** Join a synchronized Yjs room after loading its matching source package. */
24
25
  startYjsCollaboration(session: CollabSession, options: WordYjsOptions): void;
26
+ /** Who is in the room, and whether it is synced; the off state when not sharing. */
27
+ get collaborationState(): DocxCollaborationState;
25
28
  reconnectCollaboration(): void;
26
29
  resyncCollaboration(): boolean;
27
30
  publishPresence(profile: {
@@ -1,6 +1,7 @@
1
1
  import type { DocumentModel } from 'ooxml-core/docx';
2
2
  import type { RibbonAddInCommandDetail } from 'ooxml-core/ribbon';
3
3
  import type { StepBatch } from 'ooxml-core/docx/ui';
4
+ import type { DocxCollaborationState } from './collaboration-types.js';
4
5
  import type { FileCommandDetail } from './file-commands.js';
5
6
  import type { PageChangeDetail } from './page-sync.js';
6
7
  import type { PresenceMessage } from './presence.js';
@@ -29,6 +30,8 @@ export interface DocxEditorEventMap {
29
30
  'presence-send': CustomEvent<PresenceMessage>;
30
31
  /** Local steps are pending; transport the batch to the collaboration authority. */
31
32
  'collaboration-send': CustomEvent<StepBatch>;
33
+ /** Sharing started, stopped, reconnected, synced or the people in the room changed. */
34
+ 'collaboration-change': CustomEvent<DocxCollaborationState>;
32
35
  /** A command of a host tab (`ribbonAddIns`) was chosen. */
33
36
  'office-ribbon-add-in': CustomEvent<RibbonAddInCommandDetail>;
34
37
  }
@@ -36,7 +39,7 @@ export type DocxEditorEventName = keyof DocxEditorEventMap;
36
39
  /** Detail payload type of the named event. */
37
40
  export type DocxEditorEventDetail<K extends DocxEditorEventName> = DocxEditorEventMap[K] extends CustomEvent<infer D> ? D : never;
38
41
  /** Runtime list of every event name; the `satisfies` check keeps it a subset of the map. */
39
- export declare const DOCX_EDITOR_EVENTS: readonly ["document-change", "document-error", "document-warning", "readonly-change", "ribbon-action", "ribbon-customize", "file-command", "page-change", "dirty-change", "presence-send", "collaboration-send", "office-ribbon-add-in"];
42
+ export declare const DOCX_EDITOR_EVENTS: readonly ["document-change", "document-error", "document-warning", "readonly-change", "ribbon-action", "ribbon-customize", "file-command", "page-change", "dirty-change", "presence-send", "collaboration-send", "collaboration-change", "office-ribbon-add-in"];
40
43
  /** Typed listener for plain elements (such as the ribbon) that are not a `<docx-editor>`. */
41
44
  export declare function on<K extends DocxEditorEventName>(target: EventTarget, name: K, listener: (event: DocxEditorEventMap[K]) => void): void;
42
45
  /**
@@ -1,16 +1,20 @@
1
+ import { type DocumentModel } from 'ooxml-core/docx';
1
2
  import type { Transaction } from 'prosemirror-state';
2
3
  import type { EditorView } from 'prosemirror-view';
3
4
  /**
4
5
  * Word's Update Field for the whole body: every `SEQ` caption is renumbered, then `REF` results
5
6
  * follow their bookmarked paragraph and `PAGEREF` results take the page from `pageOf`. A REF that
6
7
  * pointed at a caption's label and number keeps showing the label; a longer result is treated as
7
- * the entire caption. Fields with other switches or a missing bookmark are left as they are.
8
- * One undoable step; returns whether anything changed.
8
+ * the entire caption. With the document's `model`, `STYLEREF` results take the nearest text in
9
+ * their style before the field, else after it, which an empty paragraph in the style makes empty
10
+ * (the field stays, with its instruction, and a later update fills it). Fields with other
11
+ * switches or a missing bookmark or style are left as they are. One undoable step; returns
12
+ * whether anything changed.
9
13
  */
10
- export declare function updateFields(view: EditorView, pageOf: (id: string) => string | undefined): boolean;
14
+ export declare function updateFields(view: EditorView, pageOf: (id: string) => string | undefined, model?: DocumentModel): boolean;
11
15
  /**
12
16
  * The refresh behind `updateFields`, applied to `tr` so other commands (a new caption) can include
13
17
  * it in their own undo step. Without `pageOf`, `PAGEREF` results are left alone: pages need a layout.
14
18
  * With `captionsOnly`, only references that quote a caption are refreshed.
15
19
  */
16
- export declare function refreshFieldResults(tr: Transaction, pageOf?: (id: string) => string | undefined, captionsOnly?: boolean): Transaction;
20
+ export declare function refreshFieldResults(tr: Transaction, pageOf?: (id: string) => string | undefined, captionsOnly?: boolean, model?: DocumentModel): Transaction;
@@ -0,0 +1,3 @@
1
+ import { type DocumentModel } from 'ooxml-core/docx';
2
+ import { Plugin } from 'prosemirror-state';
3
+ export declare function formFieldViewPlugin(model: () => DocumentModel): Plugin;
@@ -12,6 +12,7 @@ export type { DocxEditorAttribute } from './editor-attributes.js';
12
12
  export { CollaborationClient, CollaborationAuthority } from 'ooxml-core/docx/ui';
13
13
  export type { CollaborationConfig, StepBatch, ClientReceiveResult, AuthorityResult, } from 'ooxml-core/docx/ui';
14
14
  export type { CollaborationAuthorityConfig } from 'ooxml-core/docx/ui';
15
+ export type { DocxCollaborationOptions, DocxCollaborationState, DocxCollaborator, } from './collaboration-types.js';
15
16
  export type { WordYjsOptions } from 'ooxml-core/docx/ui';
16
17
  export { createCollaborationAuthority } from './collaboration-model.js';
17
18
  export { PresenceClient, PRESENCE_PALETTE } from './presence.js';
@@ -9,8 +9,9 @@ export declare function mountPopover(anchor: HTMLElement, pop: HTMLElement, expa
9
9
  /** Opens a swatch grid under the caret button `anchor`. */
10
10
  export declare function openSwatchPopover(anchor: HTMLElement, choices: Array<[string, string]>, choose: (value: string) => void): void;
11
11
  /**
12
- * Opens a scrolling list of `items` under a combo box, with `current` marked and scrolled into view.
13
- * Up/Down move through the entries, Enter chooses, Escape closes. `preview` sets each entry in its
14
- * own font face.
12
+ * Opens a scrolling list of `items` under a combo box, with `current` (an entry, or its index when
13
+ * entries can repeat) marked and scrolled into view. Up/Down move through the entries, Enter
14
+ * chooses, Escape closes. `preview` sets each entry in its own font face. `choose` gets the entry
15
+ * and its index.
15
16
  */
16
- export declare function openListPopover(anchor: HTMLElement, items: readonly string[], current: string, preview: boolean, choose: (value: string) => void): void;
17
+ export declare function openListPopover(anchor: HTMLElement, items: readonly string[], current: string | number, preview: boolean, choose: (value: string, index: number) => void): void;
@@ -1,6 +1,8 @@
1
1
  import type { Node as ProseMirrorNode } from 'prosemirror-model';
2
2
  import type { Paragraph, Table, TableStyleCatalog } from 'ooxml-core/docx';
3
3
  export declare function tableNode(block: Table, paragraphNode: (paragraph: Paragraph) => ProseMirrorNode, tableStyles?: TableStyleCatalog, nested?: boolean): ProseMirrorNode;
4
+ /** The block control around a table as the editor holds it. */
5
+ export declare const tableControl: (node: ProseMirrorNode, prior?: Table) => Pick<Table, 'contentControl'>;
4
6
  /** Reads editable formatting from nodes rather than a stale prior model. */
5
7
  export declare function tableFormattingFromNode(node: ProseMirrorNode): {
6
8
  rowProperties: Table['rowProperties'];