superdoc 2.4.0-next.2 → 2.4.0-next.21

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 (62) hide show
  1. package/dist/chunks/{FindReplaceSurface-Dx0llWqP.cjs → FindReplaceSurface-0p7EtMZh.cjs} +4 -4
  2. package/dist/chunks/{FindReplaceSurface-BEW-1NhM.es.js → FindReplaceSurface-40AnrqWk.es.js} +5 -4
  3. package/dist/chunks/{PasswordPromptSurface-BUUVC2ee.cjs → PasswordPromptSurface-31lYPcCK.cjs} +4 -3
  4. package/dist/chunks/{PasswordPromptSurface-BA6HHqEa.es.js → PasswordPromptSurface-CwYeO3iQ.es.js} +4 -2
  5. package/dist/chunks/{PdfViewer-CNOtyS-I.es.js → PdfViewer-D8h7LRZy.es.js} +103 -19
  6. package/dist/chunks/{PdfViewer-qpvzwYMz.cjs → PdfViewer-Dug6yDRC.cjs} +105 -20
  7. package/dist/chunks/_plugin-vue_export-helper-BOaGB7Aw.es.js +8 -0
  8. package/dist/chunks/_plugin-vue_export-helper-SDR04tiH.cjs +13 -0
  9. package/dist/chunks/{blank-docx-DP8RUPW-.cjs → blank-docx-BuFAbRjs.cjs} +2 -0
  10. package/dist/chunks/{blank-docx-XRX6Ker2.es.js → blank-docx-DzQccOlW.es.js} +2 -0
  11. package/dist/chunks/constants-B6VBlmKp.es.js +4 -0
  12. package/dist/chunks/constants-DpXuDx_g.cjs +9 -0
  13. package/dist/chunks/{create-super-doc-ui-D4kk9AjM.es.js → create-super-doc-ui-CFsY0uxw.es.js} +2177 -581
  14. package/dist/chunks/{create-super-doc-ui-DXdWuTzm.cjs → create-super-doc-ui-jSJQis_0.cjs} +1987 -619
  15. package/dist/chunks/{eventemitter3-DqY4aSMf.cjs → eventemitter3-C_TAnXOl.cjs} +125 -16
  16. package/dist/chunks/{eventemitter3-Bt2s0X0a.es.js → eventemitter3-DEIiXiH2.es.js} +124 -16
  17. package/dist/chunks/jszip-BzJ3CyxR.es.js +4717 -0
  18. package/dist/chunks/jszip-D8mAFF-r.cjs +4758 -0
  19. package/dist/chunks/{rolldown-runtime-D7PMmH3s.es.js → rolldown-runtime-0pSA04fp.es.js} +12 -3
  20. package/dist/chunks/{rolldown-runtime-1Y-nnZJ3.cjs → rolldown-runtime-74VwNCz7.cjs} +11 -2
  21. package/dist/chunks/{uuid-CFp0WGVU.cjs → uuid-BhG0ngwk.cjs} +10 -6
  22. package/dist/chunks/{uuid-B2Sqk-3p.es.js → uuid-H0Xcmmhy.es.js} +8 -3
  23. package/dist/collaboration-upgrade-engine.cjs +34 -9
  24. package/dist/collaboration-upgrade-engine.es.js +30 -5
  25. package/dist/document-api/src/comments/comments.types.d.ts +7 -0
  26. package/dist/document-api/src/types/track-changes.types.d.ts +1 -3
  27. package/dist/layout-engine/contracts/src/incremental-dependency.d.ts +22 -2
  28. package/dist/layout-engine/contracts/src/index.d.ts +1 -1
  29. package/dist/layout-engine/layout-bridge/src/incrementalLayout.d.ts +2 -1
  30. package/dist/layout-engine/layout-bridge/src/index.d.ts +1 -0
  31. package/dist/public/ui-react.cjs +66 -2
  32. package/dist/public/ui-react.es.js +66 -1
  33. package/dist/public/ui.cjs +1 -1
  34. package/dist/public/ui.es.js +1 -1
  35. package/dist/style.css +104 -69
  36. package/dist/style.layered.css +104 -69
  37. package/dist/superdoc/src/core/SuperDoc.d.ts +4 -0
  38. package/dist/superdoc/src/core/types/index.d.ts +505 -42
  39. package/dist/superdoc/src/helpers/comment-small-screen.d.ts +10 -0
  40. package/dist/superdoc/src/helpers/v2-review-mutation-impact.d.ts +1 -0
  41. package/dist/superdoc/src/helpers/v2-review-mutation-reconciler.d.ts +1 -1
  42. package/dist/superdoc/src/helpers/v2-typing-review-hydration.d.ts +16 -0
  43. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarButton.vue.d.ts +4 -4
  44. package/dist/superdoc/src/internal/toolbar/built-in-toolbar.d.ts +11 -0
  45. package/dist/superdoc/src/internal/toolbar/compatibility-catalog.d.ts +1 -1
  46. package/dist/superdoc/src/public/index.d.cts +22 -0
  47. package/dist/superdoc/src/public/index.d.ts +11 -0
  48. package/dist/superdoc/src/public/ui/types.d.ts +25 -1
  49. package/dist/superdoc/src/stores/comments-store.d.ts +100 -22
  50. package/dist/superdoc/src/stores/superdoc-store.d.ts +300 -66
  51. package/dist/superdoc.cjs +6678 -1391
  52. package/dist/superdoc.es.js +6556 -1268
  53. package/dist-cdn/style.layered.css +1 -1
  54. package/dist-cdn/superdoc.min.css +1 -1
  55. package/dist-cdn/superdoc.min.js +37 -37
  56. package/package.json +14 -14
  57. package/dist/chunks/_plugin-vue_export-helper-BTwbGDKw.cjs +0 -11
  58. package/dist/chunks/_plugin-vue_export-helper-CInC0bKI.es.js +0 -6
  59. package/dist/chunks/constants-CY3R3_kF.es.js +0 -3
  60. package/dist/chunks/constants-sbCZ2O_A.cjs +0 -14
  61. package/dist/chunks/jszip-C8srOKAO.es.js +0 -4650
  62. package/dist/chunks/jszip-Cs9JBLlJ.cjs +0 -4691
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Coalesce automatic review-catalog reconciliation behind a genuine typing
3
+ * quiet period. Every typing signal restarts the trailing timer; there is no
4
+ * maximum-wait escape hatch because that would deliberately run the expensive
5
+ * catalog reads in the middle of a sustained input burst.
6
+ */
7
+ export function createV2TypingReviewHydrationScheduler({ hydrate, idleMs, setTimer, clearTimer, }: {
8
+ hydrate: any;
9
+ idleMs?: number | undefined;
10
+ setTimer?: ((callback: any, delay: any) => NodeJS.Timeout) | undefined;
11
+ clearTimer?: ((timer: any) => void) | undefined;
12
+ }): {
13
+ schedule: () => void;
14
+ clear: () => void;
15
+ isPending: () => boolean;
16
+ };
@@ -1,20 +1,20 @@
1
1
  declare const _default: import('vue').DefineComponent<{}, {
2
2
  $emit: (event: "buttonClick" | "textSubmit" | "mainClick", ...args: any[]) => void;
3
3
  active: boolean;
4
- iconColor: string;
5
4
  isNarrow: boolean;
6
5
  isWide: boolean;
7
- toolbarItem: Record<string, any>;
8
6
  defaultLabel: string;
7
+ iconColor: string;
8
+ toolbarItem: Record<string, any>;
9
9
  isOverflowItem: boolean;
10
10
  allowEnterPropagation: boolean;
11
11
  $props: {
12
12
  readonly active?: boolean | undefined;
13
- readonly iconColor?: string | undefined;
14
13
  readonly isNarrow?: boolean | undefined;
15
14
  readonly isWide?: boolean | undefined;
16
- readonly toolbarItem?: Record<string, any> | undefined;
17
15
  readonly defaultLabel?: string | undefined;
16
+ readonly iconColor?: string | undefined;
17
+ readonly toolbarItem?: Record<string, any> | undefined;
18
18
  readonly isOverflowItem?: boolean | undefined;
19
19
  readonly allowEnterPropagation?: boolean | undefined;
20
20
  };
@@ -187,6 +187,17 @@ export class BuiltInToolbar extends EventEmitter<string | symbol, any> {
187
187
  _detachFormatPainterModeChange: any;
188
188
  /** Registered custom-button command unregister handles. */
189
189
  _customCommandRegs: Map<any, any>;
190
+ /**
191
+ * Custom entries already reported as unbuildable.
192
+ *
193
+ * `#makeToolbarItems` runs on every throttled resize and on font or
194
+ * active-editor changes, not only at construction, so a single static
195
+ * configuration error would otherwise fire `exception` once per rebuild --
196
+ * unbounded, into consumer telemetry, for a mistake that cannot change
197
+ * without a reconfigure. Keyed by name plus message so a different fault
198
+ * on the same entry still reports once.
199
+ */
200
+ _reportedInvalidCustomItems: Set<any>;
190
201
  /** Signature of the last-built font options, to skip redundant rebuilds. */
191
202
  _lastFontOptionsSignature: string;
192
203
  app: import('vue').App<Element> | undefined;
@@ -36,7 +36,7 @@ export interface BuiltInToolbarItemEntry {
36
36
  * docs present them; it is documentation-only.
37
37
  *
38
38
  * Every documented `Available buttons` entry from
39
- * `apps/docs/editor/built-in-ui/toolbar.mdx` appears here exactly once, plus the
39
+ * the built-in UI documentation appears here exactly once, plus the
40
40
  * `customButtons` shell concept.
41
41
  */
42
42
  export declare const BUILT_IN_TOOLBAR_CATALOG: readonly BuiltInToolbarItemEntry[];
@@ -9,10 +9,12 @@ import type { BorrowedSuperDocUI as __Cjs_BorrowedSuperDocUI } from './index.js'
9
9
  import type { CanPerformPermissionParams as __Cjs_CanPerformPermissionParams } from './index.js' with { "resolution-mode": "import" };
10
10
  import type { CollaborationConfig as __Cjs_CollaborationConfig } from './index.js' with { "resolution-mode": "import" };
11
11
  import type { CommentAddress as __Cjs_CommentAddress } from './index.js' with { "resolution-mode": "import" };
12
+ import type { CommentsConfig as __Cjs_CommentsConfig } from './index.js' with { "resolution-mode": "import" };
12
13
  import type { CommentsType as __Cjs_CommentsType } from './index.js' with { "resolution-mode": "import" };
13
14
  import type { Config as __Cjs_Config } from './index.js' with { "resolution-mode": "import" };
14
15
  import type { ContentControlActiveChangePayload as __Cjs_ContentControlActiveChangePayload } from './index.js' with { "resolution-mode": "import" };
15
16
  import type { ContentControlClickPayload as __Cjs_ContentControlClickPayload } from './index.js' with { "resolution-mode": "import" };
17
+ import type { ContentControlsConfig as __Cjs_ContentControlsConfig } from './index.js' with { "resolution-mode": "import" };
16
18
  import type { ContextMenuConfig as __Cjs_ContextMenuConfig } from './index.js' with { "resolution-mode": "import" };
17
19
  import type { ContextMenuContext as __Cjs_ContextMenuContext } from './index.js' with { "resolution-mode": "import" };
18
20
  import type { ContextMenuItem as __Cjs_ContextMenuItem } from './index.js' with { "resolution-mode": "import" };
@@ -49,6 +51,7 @@ import type { LayoutFragment as __Cjs_LayoutFragment } from './index.js' with {
49
51
  import type { LayoutMetrics as __Cjs_LayoutMetrics } from './index.js' with { "resolution-mode": "import" };
50
52
  import type { LayoutMode as __Cjs_LayoutMode } from './index.js' with { "resolution-mode": "import" };
51
53
  import type { LayoutPage as __Cjs_LayoutPage } from './index.js' with { "resolution-mode": "import" };
54
+ import type { LinkPopoverConfig as __Cjs_LinkPopoverConfig } from './index.js' with { "resolution-mode": "import" };
52
55
  import type { LinkPopoverContext as __Cjs_LinkPopoverContext } from './index.js' with { "resolution-mode": "import" };
53
56
  import type { LinkPopoverResolution as __Cjs_LinkPopoverResolution } from './index.js' with { "resolution-mode": "import" };
54
57
  import type { LinkPopoverResolver as __Cjs_LinkPopoverResolver } from './index.js' with { "resolution-mode": "import" };
@@ -96,6 +99,7 @@ import type { SuperDocExceptionEditorPayload as __Cjs_SuperDocExceptionEditorPay
96
99
  import type { SuperDocExceptionPayload as __Cjs_SuperDocExceptionPayload } from './index.js' with { "resolution-mode": "import" };
97
100
  import type { SuperDocExceptionRestorePayload as __Cjs_SuperDocExceptionRestorePayload } from './index.js' with { "resolution-mode": "import" };
98
101
  import type { SuperDocExceptionStorePayload as __Cjs_SuperDocExceptionStorePayload } from './index.js' with { "resolution-mode": "import" };
102
+ import type { SuperDocExceptionToolbarPayload as __Cjs_SuperDocExceptionToolbarPayload } from './index.js' with { "resolution-mode": "import" };
99
103
  import type { SuperDocExtension as __Cjs_SuperDocExtension } from './index.js' with { "resolution-mode": "import" };
100
104
  import type { SuperDocExtensionActivateReturn as __Cjs_SuperDocExtensionActivateReturn } from './index.js' with { "resolution-mode": "import" };
101
105
  import type { SuperDocExtensionCapabilities as __Cjs_SuperDocExtensionCapabilities } from './index.js' with { "resolution-mode": "import" };
@@ -163,7 +167,14 @@ import type { SurfacesModuleConfig as __Cjs_SurfacesModuleConfig } from './index
163
167
  import type { TextAddress as __Cjs_TextAddress } from './index.js' with { "resolution-mode": "import" };
164
168
  import type { TextSegment as __Cjs_TextSegment } from './index.js' with { "resolution-mode": "import" };
165
169
  import type { TextTarget as __Cjs_TextTarget } from './index.js' with { "resolution-mode": "import" };
170
+ import type { ToolbarCustomButton as __Cjs_ToolbarCustomButton } from './index.js' with { "resolution-mode": "import" };
171
+ import type { ToolbarCustomButtonContext as __Cjs_ToolbarCustomButtonContext } from './index.js' with { "resolution-mode": "import" };
172
+ import type { ToolbarCustomButtonItem as __Cjs_ToolbarCustomButtonItem } from './index.js' with { "resolution-mode": "import" };
173
+ import type { ToolbarCustomDropdownItem as __Cjs_ToolbarCustomDropdownItem } from './index.js' with { "resolution-mode": "import" };
174
+ import type { ToolbarCustomDropdownOption as __Cjs_ToolbarCustomDropdownOption } from './index.js' with { "resolution-mode": "import" };
175
+ import type { ToolbarCustomSeparatorItem as __Cjs_ToolbarCustomSeparatorItem } from './index.js' with { "resolution-mode": "import" };
166
176
  import type { TrackChangeAuthor as __Cjs_TrackChangeAuthor } from './index.js' with { "resolution-mode": "import" };
177
+ import type { TrackChangeHighlightColors as __Cjs_TrackChangeHighlightColors } from './index.js' with { "resolution-mode": "import" };
167
178
  import type { TrackChangesAuthorColorsConfig as __Cjs_TrackChangesAuthorColorsConfig } from './index.js' with { "resolution-mode": "import" };
168
179
  import type { TrackChangesModuleConfig as __Cjs_TrackChangesModuleConfig } from './index.js' with { "resolution-mode": "import" };
169
180
  import type { TrackChangesSemanticColorsConfig as __Cjs_TrackChangesSemanticColorsConfig } from './index.js' with { "resolution-mode": "import" };
@@ -188,11 +199,13 @@ export declare const buildTheme: typeof import('./index.js', { with: { "resoluti
188
199
  export type { __Cjs_CanPerformPermissionParams as CanPerformPermissionParams };
189
200
  export type { __Cjs_CollaborationConfig as CollaborationConfig };
190
201
  export type { __Cjs_CommentAddress as CommentAddress };
202
+ export type { __Cjs_CommentsConfig as CommentsConfig };
191
203
  export type { __Cjs_CommentsType as CommentsType };
192
204
  export declare const compareVersions: typeof import('./index.js', { with: { "resolution-mode": "import" } }).compareVersions;
193
205
  export type { __Cjs_Config as Config };
194
206
  export type { __Cjs_ContentControlActiveChangePayload as ContentControlActiveChangePayload };
195
207
  export type { __Cjs_ContentControlClickPayload as ContentControlClickPayload };
208
+ export type { __Cjs_ContentControlsConfig as ContentControlsConfig };
196
209
  export type { __Cjs_ContextMenuConfig as ContextMenuConfig };
197
210
  export type { __Cjs_ContextMenuContext as ContextMenuContext };
198
211
  export type { __Cjs_ContextMenuItem as ContextMenuItem };
@@ -234,6 +247,7 @@ export type { __Cjs_LayoutFragment as LayoutFragment };
234
247
  export type { __Cjs_LayoutMetrics as LayoutMetrics };
235
248
  export type { __Cjs_LayoutMode as LayoutMode };
236
249
  export type { __Cjs_LayoutPage as LayoutPage };
250
+ export type { __Cjs_LinkPopoverConfig as LinkPopoverConfig };
237
251
  export type { __Cjs_LinkPopoverContext as LinkPopoverContext };
238
252
  export type { __Cjs_LinkPopoverResolution as LinkPopoverResolution };
239
253
  export type { __Cjs_LinkPopoverResolver as LinkPopoverResolver };
@@ -283,6 +297,7 @@ export type { __Cjs_SuperDocExceptionEditorPayload as SuperDocExceptionEditorPay
283
297
  export type { __Cjs_SuperDocExceptionPayload as SuperDocExceptionPayload };
284
298
  export type { __Cjs_SuperDocExceptionRestorePayload as SuperDocExceptionRestorePayload };
285
299
  export type { __Cjs_SuperDocExceptionStorePayload as SuperDocExceptionStorePayload };
300
+ export type { __Cjs_SuperDocExceptionToolbarPayload as SuperDocExceptionToolbarPayload };
286
301
  export type { __Cjs_SuperDocExtension as SuperDocExtension };
287
302
  export type { __Cjs_SuperDocExtensionActivateReturn as SuperDocExtensionActivateReturn };
288
303
  export type { __Cjs_SuperDocExtensionCapabilities as SuperDocExtensionCapabilities };
@@ -350,7 +365,14 @@ export type { __Cjs_SurfacesModuleConfig as SurfacesModuleConfig };
350
365
  export type { __Cjs_TextAddress as TextAddress };
351
366
  export type { __Cjs_TextSegment as TextSegment };
352
367
  export type { __Cjs_TextTarget as TextTarget };
368
+ export type { __Cjs_ToolbarCustomButton as ToolbarCustomButton };
369
+ export type { __Cjs_ToolbarCustomButtonContext as ToolbarCustomButtonContext };
370
+ export type { __Cjs_ToolbarCustomButtonItem as ToolbarCustomButtonItem };
371
+ export type { __Cjs_ToolbarCustomDropdownItem as ToolbarCustomDropdownItem };
372
+ export type { __Cjs_ToolbarCustomDropdownOption as ToolbarCustomDropdownOption };
373
+ export type { __Cjs_ToolbarCustomSeparatorItem as ToolbarCustomSeparatorItem };
353
374
  export type { __Cjs_TrackChangeAuthor as TrackChangeAuthor };
375
+ export type { __Cjs_TrackChangeHighlightColors as TrackChangeHighlightColors };
354
376
  export type { __Cjs_TrackChangesAuthorColorsConfig as TrackChangesAuthorColorsConfig };
355
377
  export type { __Cjs_TrackChangesModuleConfig as TrackChangesModuleConfig };
356
378
  export type { __Cjs_TrackChangesSemanticColorsConfig as TrackChangesSemanticColorsConfig };
@@ -62,6 +62,7 @@ export type { SuperDocAwarenessUpdatePayload } from '../core/types/index.js';
62
62
  export type { SuperDocCommentsUpdatePayload } from '../core/types/index.js';
63
63
  export type { SuperDocEditorPayload } from '../core/types/index.js';
64
64
  export type { SuperDocExceptionEditorPayload } from '../core/types/index.js';
65
+ export type { SuperDocExceptionToolbarPayload } from '../core/types/index.js';
65
66
  export type { SuperDocExceptionPayload } from '../core/types/index.js';
66
67
  export type { SuperDocExceptionRestorePayload } from '../core/types/index.js';
67
68
  export type { SuperDocExceptionStorePayload } from '../core/types/index.js';
@@ -72,6 +73,16 @@ export type { SuperDocLayoutEngineOptions as LayoutEngineOptions } from '../core
72
73
  export type { FlowBlock, FlowMode, Layout, Fragment as LayoutFragment, Page as LayoutPage } from '../../../layout-engine/contracts/src/index.js';
73
74
  export type { LayoutMetrics } from '../../../layout-engine/layout-bridge/src/index.js';
74
75
  export type { LayoutMode } from '../../../layout-engine/painters/dom/src/index.js';
76
+ export type { CommentsConfig } from '../core/types/index.js';
77
+ export type { TrackChangeHighlightColors } from '../core/types/index.js';
78
+ export type { ContentControlsConfig } from '../core/types/index.js';
79
+ export type { ToolbarCustomButton } from '../core/types/index.js';
80
+ export type { ToolbarCustomButtonItem } from '../core/types/index.js';
81
+ export type { ToolbarCustomDropdownItem } from '../core/types/index.js';
82
+ export type { ToolbarCustomDropdownOption } from '../core/types/index.js';
83
+ export type { ToolbarCustomSeparatorItem } from '../core/types/index.js';
84
+ export type { ToolbarCustomButtonContext } from '../core/types/index.js';
85
+ export type { LinkPopoverConfig } from '../core/types/index.js';
75
86
  export type { LinkPopoverContext } from '../core/types/index.js';
76
87
  export type { LinkPopoverResolution } from '../core/types/index.js';
77
88
  export type { LinkPopoverResolver } from '../core/types/index.js';
@@ -837,7 +837,19 @@ export interface CommentsHandle extends SnapshotSubscribable<CommentsSlice> {
837
837
  list(query?: CommentsListQuery): readonly CommentInfo[];
838
838
  /** Resolve a single comment by id from the best-known loaded state. */
839
839
  getById(commentId: string): CommentInfo | null;
840
- /** Create a comment from a frozen selection capture. */
840
+ /**
841
+ * Create a comment from a frozen selection capture.
842
+ *
843
+ * A capture carrying neither `target` nor `selectionTarget` fails closed with
844
+ * the same `NO_SELECTION` receipt {@link createFromSelection} mints for an
845
+ * empty selection, because both describe the same user-visible mistake:
846
+ * commenting with nothing selected. A capture that *has* a target which no
847
+ * longer resolves is a different failure, and keeps the Document API's own
848
+ * receipt so the reason stays specific.
849
+ *
850
+ * `capturedAt` is provenance for the consumer, not an expiry. A capture stays
851
+ * usable while its target resolves; elapsed time alone never invalidates it.
852
+ */
841
853
  createFromCapture(capture: CommentAnchorCapture, input: {
842
854
  text: string;
843
855
  }): WorkflowReceipt;
@@ -853,6 +865,18 @@ export interface CommentsHandle extends SnapshotSubscribable<CommentsSlice> {
853
865
  reply(commentId: string, input: {
854
866
  text: string;
855
867
  }): WorkflowReceipt;
868
+ /**
869
+ * Replace a comment's body text through the Document API
870
+ * (`comments.patch({ commentId, text })`).
871
+ *
872
+ * Gated by the comments `readOnly` policy like every other comment write.
873
+ * `allowResolve` is deliberately NOT consulted: that policy forbids only the
874
+ * resolve/reopen transition, and an application that may not resolve threads
875
+ * can still let an author correct their own wording.
876
+ */
877
+ edit(commentId: string, input: {
878
+ text: string;
879
+ }): WorkflowReceipt;
856
880
  /** Mark a comment resolved. */
857
881
  resolve(commentId: string): WorkflowReceipt;
858
882
  /** Reopen a resolved comment. */
@@ -157,7 +157,7 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
157
157
  retainedTrackedChangeIds?: Iterable<string>;
158
158
  }) => void;
159
159
  clearEditorCommentPositions: () => void;
160
- handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState }: {
160
+ handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState, trackedChangeIdentityIndex, }: {
161
161
  superdoc: Object;
162
162
  params: Object;
163
163
  }) => void;
@@ -185,10 +185,17 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
185
185
  v2CommentsAdapter: import('vue').ShallowRef<null, null>;
186
186
  setV2CommentsAdapter: (adapter: any) => void;
187
187
  getV2CommentsAdapter: (superdoc: any) => any;
188
- hydrateCommentsFromV2: ({ superdoc, adapter, documentId }?: {}) => Promise<any>;
189
- applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, patch, }?: {}) => any;
190
- reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs }?: {
188
+ hydrateCommentsFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, commentIds, isCurrent, signal, hydrationGeneration, }?: {
189
+ trackedChangesListMode?: string | undefined;
190
+ }) => Promise<any>;
191
+ applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, sourceCoverageRevision, evaluatedRevision, patch, }?: {}) => any;
192
+ supersedeV2ReviewHydration: ({ commentsAdapter, trackedChangesAdapter }?: {}) => {
193
+ commentsGeneration: any;
194
+ trackedChangesGeneration: any;
195
+ };
196
+ reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs, pruneStale, hydrationGeneration, }?: {
191
197
  preparedInputs?: null | undefined;
198
+ pruneStale?: boolean | undefined;
192
199
  }) => any;
193
200
  isV2EditorActive: (superdoc: any) => boolean;
194
201
  replyCommentV2: ({ superdoc, parentCommentId, text }?: {}) => Promise<any>;
@@ -198,10 +205,12 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
198
205
  v2TrackedChangesAdapter: import('vue').ShallowRef<null, null>;
199
206
  setV2TrackedChangesAdapter: (adapter: any) => void;
200
207
  getV2TrackedChangesAdapter: (superdoc: any) => any;
201
- hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, }?: {
208
+ getV2TrackedChangeRowCount: (documentId?: null) => number;
209
+ hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, isCurrent, targetIds, reconciliationBatchSize, signal, hydrationGeneration, }?: {
202
210
  trackedChangesListMode?: string | undefined;
211
+ reconciliationBatchSize?: number | undefined;
203
212
  }) => Promise<any>;
204
- reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, }?: {
213
+ reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, allResolved, }?: {
205
214
  upsertIds?: never[] | undefined;
206
215
  removedIds?: never[] | undefined;
207
216
  }) => Promise<{
@@ -210,14 +219,27 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
210
219
  items?: undefined;
211
220
  resolvedIds?: undefined;
212
221
  unresolvedIds?: undefined;
222
+ allResolved?: undefined;
223
+ removedRows?: undefined;
213
224
  failures?: undefined;
214
225
  } | {
215
226
  ok: boolean;
216
227
  items: never[];
217
228
  resolvedIds: never[];
218
229
  unresolvedIds: never[];
230
+ allResolved: boolean;
231
+ removedRows: any;
219
232
  reason?: undefined;
220
233
  failures?: undefined;
234
+ } | {
235
+ ok: boolean;
236
+ items: never[];
237
+ resolvedIds: never[];
238
+ unresolvedIds: never[];
239
+ reason?: undefined;
240
+ allResolved?: undefined;
241
+ removedRows?: undefined;
242
+ failures?: undefined;
221
243
  } | {
222
244
  ok: boolean;
223
245
  items: any[];
@@ -225,10 +247,14 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
225
247
  unresolvedIds: (string | null)[];
226
248
  failures: any[];
227
249
  reason?: undefined;
250
+ allResolved?: undefined;
251
+ removedRows?: undefined;
228
252
  }>;
229
- reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, }?: {
253
+ reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, liveIds: suppliedLiveIds, liveAnchorKeys: suppliedLiveAnchorKeys, hydrationGeneration, }?: {
230
254
  pruneStale?: boolean | undefined;
231
255
  preparedParams?: null | undefined;
256
+ liveIds?: null | undefined;
257
+ liveAnchorKeys?: null | undefined;
232
258
  }) => any;
233
259
  remapTrackedChangeIdentities: (pairs?: any[], { documentId }?: {}) => void;
234
260
  }, "suppressInternalExternal" | "activeComment" | "activeFloatingCommentInstanceId" | "floatingCommentsOffset" | "pendingComment" | "currentCommentText" | "isDebugging" | "editingCommentId" | "editorCommentPositions" | "isCommentHighlighted" | "v2CommentsAdapter" | "COMMENT_EVENTS" | "hasInitializedComments" | "hasSyncedCollaborationComments" | "commentDialogs" | "overlappingComments" | "overlappedIds" | "commentsList" | "isCommentsListVisible" | "generalCommentIds" | "editorCommentIds" | "commentsParentElement" | "hasInitializedLocations" | "sortedConversations" | "visibleConversations" | "skipSelectionUpdate" | "isFloatingCommentsReady" | "instantSidebarAlignmentTargetY" | "instantSidebarAlignmentThreadId" | "instantSidebarAlignmentInstanceId" | "viewingVisibility" | "v2TrackedChangesAdapter">, Pick<{
@@ -390,7 +416,7 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
390
416
  retainedTrackedChangeIds?: Iterable<string>;
391
417
  }) => void;
392
418
  clearEditorCommentPositions: () => void;
393
- handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState }: {
419
+ handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState, trackedChangeIdentityIndex, }: {
394
420
  superdoc: Object;
395
421
  params: Object;
396
422
  }) => void;
@@ -418,10 +444,17 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
418
444
  v2CommentsAdapter: import('vue').ShallowRef<null, null>;
419
445
  setV2CommentsAdapter: (adapter: any) => void;
420
446
  getV2CommentsAdapter: (superdoc: any) => any;
421
- hydrateCommentsFromV2: ({ superdoc, adapter, documentId }?: {}) => Promise<any>;
422
- applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, patch, }?: {}) => any;
423
- reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs }?: {
447
+ hydrateCommentsFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, commentIds, isCurrent, signal, hydrationGeneration, }?: {
448
+ trackedChangesListMode?: string | undefined;
449
+ }) => Promise<any>;
450
+ applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, sourceCoverageRevision, evaluatedRevision, patch, }?: {}) => any;
451
+ supersedeV2ReviewHydration: ({ commentsAdapter, trackedChangesAdapter }?: {}) => {
452
+ commentsGeneration: any;
453
+ trackedChangesGeneration: any;
454
+ };
455
+ reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs, pruneStale, hydrationGeneration, }?: {
424
456
  preparedInputs?: null | undefined;
457
+ pruneStale?: boolean | undefined;
425
458
  }) => any;
426
459
  isV2EditorActive: (superdoc: any) => boolean;
427
460
  replyCommentV2: ({ superdoc, parentCommentId, text }?: {}) => Promise<any>;
@@ -431,10 +464,12 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
431
464
  v2TrackedChangesAdapter: import('vue').ShallowRef<null, null>;
432
465
  setV2TrackedChangesAdapter: (adapter: any) => void;
433
466
  getV2TrackedChangesAdapter: (superdoc: any) => any;
434
- hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, }?: {
467
+ getV2TrackedChangeRowCount: (documentId?: null) => number;
468
+ hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, isCurrent, targetIds, reconciliationBatchSize, signal, hydrationGeneration, }?: {
435
469
  trackedChangesListMode?: string | undefined;
470
+ reconciliationBatchSize?: number | undefined;
436
471
  }) => Promise<any>;
437
- reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, }?: {
472
+ reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, allResolved, }?: {
438
473
  upsertIds?: never[] | undefined;
439
474
  removedIds?: never[] | undefined;
440
475
  }) => Promise<{
@@ -443,14 +478,27 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
443
478
  items?: undefined;
444
479
  resolvedIds?: undefined;
445
480
  unresolvedIds?: undefined;
481
+ allResolved?: undefined;
482
+ removedRows?: undefined;
446
483
  failures?: undefined;
447
484
  } | {
448
485
  ok: boolean;
449
486
  items: never[];
450
487
  resolvedIds: never[];
451
488
  unresolvedIds: never[];
489
+ allResolved: boolean;
490
+ removedRows: any;
452
491
  reason?: undefined;
453
492
  failures?: undefined;
493
+ } | {
494
+ ok: boolean;
495
+ items: never[];
496
+ resolvedIds: never[];
497
+ unresolvedIds: never[];
498
+ reason?: undefined;
499
+ allResolved?: undefined;
500
+ removedRows?: undefined;
501
+ failures?: undefined;
454
502
  } | {
455
503
  ok: boolean;
456
504
  items: any[];
@@ -458,10 +506,14 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
458
506
  unresolvedIds: (string | null)[];
459
507
  failures: any[];
460
508
  reason?: undefined;
509
+ allResolved?: undefined;
510
+ removedRows?: undefined;
461
511
  }>;
462
- reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, }?: {
512
+ reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, liveIds: suppliedLiveIds, liveAnchorKeys: suppliedLiveAnchorKeys, hydrationGeneration, }?: {
463
513
  pruneStale?: boolean | undefined;
464
514
  preparedParams?: null | undefined;
515
+ liveIds?: null | undefined;
516
+ liveAnchorKeys?: null | undefined;
465
517
  }) => any;
466
518
  remapTrackedChangeIdentities: (pairs?: any[], { documentId }?: {}) => void;
467
519
  }, "getConfig" | "documentsWithConverations" | "getGroupedComments" | "hasOpenTrackedChanges" | "getCommentsByPosition" | "getFloatingComments" | "getFloatingCommentInstances" | "isViewingMode" | "shouldRenderReviewInViewing">, Pick<{
@@ -623,7 +675,7 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
623
675
  retainedTrackedChangeIds?: Iterable<string>;
624
676
  }) => void;
625
677
  clearEditorCommentPositions: () => void;
626
- handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState }: {
678
+ handleTrackedChangeUpdate: ({ superdoc, params, broadcastChanges, documentState, trackedChangeIdentityIndex, }: {
627
679
  superdoc: Object;
628
680
  params: Object;
629
681
  }) => void;
@@ -651,10 +703,17 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
651
703
  v2CommentsAdapter: import('vue').ShallowRef<null, null>;
652
704
  setV2CommentsAdapter: (adapter: any) => void;
653
705
  getV2CommentsAdapter: (superdoc: any) => any;
654
- hydrateCommentsFromV2: ({ superdoc, adapter, documentId }?: {}) => Promise<any>;
655
- applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, patch, }?: {}) => any;
656
- reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs }?: {
706
+ hydrateCommentsFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, commentIds, isCurrent, signal, hydrationGeneration, }?: {
707
+ trackedChangesListMode?: string | undefined;
708
+ }) => Promise<any>;
709
+ applyReviewSnapshotFromV2: ({ superdoc, commentsAdapter, trackedChangesAdapter, documentId, commentItems, trackedChangeItems, trackedList, sourceCoverageRevision, evaluatedRevision, patch, }?: {}) => any;
710
+ supersedeV2ReviewHydration: ({ commentsAdapter, trackedChangesAdapter }?: {}) => {
711
+ commentsGeneration: any;
712
+ trackedChangesGeneration: any;
713
+ };
714
+ reconcileCommentsFromV2: ({ superdoc, adapter, documentId, items, preparedInputs, pruneStale, hydrationGeneration, }?: {
657
715
  preparedInputs?: null | undefined;
716
+ pruneStale?: boolean | undefined;
658
717
  }) => any;
659
718
  isV2EditorActive: (superdoc: any) => boolean;
660
719
  replyCommentV2: ({ superdoc, parentCommentId, text }?: {}) => Promise<any>;
@@ -664,10 +723,12 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
664
723
  v2TrackedChangesAdapter: import('vue').ShallowRef<null, null>;
665
724
  setV2TrackedChangesAdapter: (adapter: any) => void;
666
725
  getV2TrackedChangesAdapter: (superdoc: any) => any;
667
- hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, }?: {
726
+ getV2TrackedChangeRowCount: (documentId?: null) => number;
727
+ hydrateTrackedChangesFromV2: ({ superdoc, adapter, documentId, trackedChangesListMode, refreshReason, blocking, isCurrent, targetIds, reconciliationBatchSize, signal, hydrationGeneration, }?: {
668
728
  trackedChangesListMode?: string | undefined;
729
+ reconciliationBatchSize?: number | undefined;
669
730
  }) => Promise<any>;
670
- reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, }?: {
731
+ reconcileTrackedChangeMutationFromV2: ({ superdoc, adapter, documentId, upsertIds, removedIds, allResolved, }?: {
671
732
  upsertIds?: never[] | undefined;
672
733
  removedIds?: never[] | undefined;
673
734
  }) => Promise<{
@@ -676,6 +737,17 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
676
737
  items?: undefined;
677
738
  resolvedIds?: undefined;
678
739
  unresolvedIds?: undefined;
740
+ allResolved?: undefined;
741
+ removedRows?: undefined;
742
+ failures?: undefined;
743
+ } | {
744
+ ok: boolean;
745
+ items: never[];
746
+ resolvedIds: never[];
747
+ unresolvedIds: never[];
748
+ allResolved: boolean;
749
+ removedRows: any;
750
+ reason?: undefined;
679
751
  failures?: undefined;
680
752
  } | {
681
753
  ok: boolean;
@@ -683,6 +755,8 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
683
755
  resolvedIds: never[];
684
756
  unresolvedIds: never[];
685
757
  reason?: undefined;
758
+ allResolved?: undefined;
759
+ removedRows?: undefined;
686
760
  failures?: undefined;
687
761
  } | {
688
762
  ok: boolean;
@@ -691,10 +765,14 @@ export const useCommentsStore: import('pinia').StoreDefinition<"comments", Pick<
691
765
  unresolvedIds: (string | null)[];
692
766
  failures: any[];
693
767
  reason?: undefined;
768
+ allResolved?: undefined;
769
+ removedRows?: undefined;
694
770
  }>;
695
- reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, }?: {
771
+ reconcileTrackedChangesFromV2: ({ superdoc, adapter, documentId, items, pruneStale, preparedParams, liveIds: suppliedLiveIds, liveAnchorKeys: suppliedLiveAnchorKeys, hydrationGeneration, }?: {
696
772
  pruneStale?: boolean | undefined;
697
773
  preparedParams?: null | undefined;
774
+ liveIds?: null | undefined;
775
+ liveAnchorKeys?: null | undefined;
698
776
  }) => any;
699
777
  remapTrackedChangeIdentities: (pairs?: any[], { documentId }?: {}) => void;
700
- }, "getCommentAliasIds" | "getTrackedChangeThread" | "getCommentPositionKey" | "getCommentPosition" | "getCommentAnchoredText" | "getCommentAnchorData" | "resolveCommentPositionEntry" | "getCommentDocumentId" | "belongsToDocument" | "init" | "setViewingVisibility" | "getComment" | "setActiveComment" | "getCommentLocation" | "hasOverlapId" | "getPendingComment" | "showAddComment" | "addComment" | "addHydratedComment" | "cancelComment" | "deleteComment" | "removePendingComment" | "cancelImportedTrackedChangeBootstrap" | "removeCommentsForDocument" | "processLoadedDocxComments" | "translateCommentsForExport" | "handleEditorLocationsUpdate" | "clearEditorCommentPositions" | "handleTrackedChangeUpdate" | "refreshTrackedChangeCommentsByIds" | "syncResolvedCommentsWithDocument" | "syncTrackedChangePositionsWithDocument" | "setActiveFloatingCommentInstance" | "requestInstantSidebarAlignment" | "peekInstantSidebarAlignment" | "clearInstantSidebarAlignment" | "syncTrackedChangeComments" | "decideTrackedChangeFromSidebar" | "setV2CommentsAdapter" | "getV2CommentsAdapter" | "hydrateCommentsFromV2" | "applyReviewSnapshotFromV2" | "reconcileCommentsFromV2" | "isV2EditorActive" | "replyCommentV2" | "editCommentV2" | "resolveCommentV2" | "reopenCommentV2" | "setV2TrackedChangesAdapter" | "getV2TrackedChangesAdapter" | "hydrateTrackedChangesFromV2" | "reconcileTrackedChangeMutationFromV2" | "reconcileTrackedChangesFromV2" | "remapTrackedChangeIdentities">>;
778
+ }, "getCommentAliasIds" | "getTrackedChangeThread" | "getCommentPositionKey" | "getCommentPosition" | "getCommentAnchoredText" | "getCommentAnchorData" | "resolveCommentPositionEntry" | "getCommentDocumentId" | "belongsToDocument" | "init" | "setViewingVisibility" | "getComment" | "setActiveComment" | "getCommentLocation" | "hasOverlapId" | "getPendingComment" | "showAddComment" | "addComment" | "addHydratedComment" | "cancelComment" | "deleteComment" | "removePendingComment" | "cancelImportedTrackedChangeBootstrap" | "removeCommentsForDocument" | "processLoadedDocxComments" | "translateCommentsForExport" | "handleEditorLocationsUpdate" | "clearEditorCommentPositions" | "handleTrackedChangeUpdate" | "refreshTrackedChangeCommentsByIds" | "syncResolvedCommentsWithDocument" | "syncTrackedChangePositionsWithDocument" | "setActiveFloatingCommentInstance" | "requestInstantSidebarAlignment" | "peekInstantSidebarAlignment" | "clearInstantSidebarAlignment" | "syncTrackedChangeComments" | "decideTrackedChangeFromSidebar" | "setV2CommentsAdapter" | "getV2CommentsAdapter" | "hydrateCommentsFromV2" | "applyReviewSnapshotFromV2" | "supersedeV2ReviewHydration" | "reconcileCommentsFromV2" | "isV2EditorActive" | "replyCommentV2" | "editCommentV2" | "resolveCommentV2" | "reopenCommentV2" | "setV2TrackedChangesAdapter" | "getV2TrackedChangesAdapter" | "getV2TrackedChangeRowCount" | "hydrateTrackedChangesFromV2" | "reconcileTrackedChangeMutationFromV2" | "reconcileTrackedChangesFromV2" | "remapTrackedChangeIdentities">>;