superdoc 2.29.0-next.3 → 2.29.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 (175) hide show
  1. package/dist/chunks/{FindReplaceSurface-BKVHzhQ4.es.js → FindReplaceSurface-B_5ggdWg.es.js} +1 -1
  2. package/dist/chunks/{FindReplaceSurface-BNDrJ6VS.cjs → FindReplaceSurface-fVHxPXtn.cjs} +1 -1
  3. package/dist/chunks/{PasswordPromptSurface-6mF6Azda.es.js → PasswordPromptSurface-CZqhDQQ1.es.js} +1 -1
  4. package/dist/chunks/{PasswordPromptSurface-BNkaztaP.cjs → PasswordPromptSurface-x8GNmMJT.cjs} +1 -1
  5. package/dist/chunks/{PdfViewer-D4lVeOJu.es.js → PdfViewer-CW09MNrB.es.js} +70 -105
  6. package/dist/chunks/{PdfViewer-boENOZdF.cjs → PdfViewer-CkrAHpC-.cjs} +74 -109
  7. package/dist/chunks/{_plugin-vue_export-helper-6MBoygIY.cjs → _plugin-vue_export-helper-BkbCxNeT.cjs} +31 -7
  8. package/dist/chunks/{_plugin-vue_export-helper-CsJQtMvr.es.js → _plugin-vue_export-helper-DRPRMkeA.es.js} +20 -8
  9. package/dist/chunks/{constants-DpXuDx_g.cjs → constants-BeeNZoQp.cjs} +1 -1
  10. package/dist/chunks/{constants-B6VBlmKp.es.js → constants-BvNs_ybI.es.js} +1 -1
  11. package/dist/chunks/{create-super-doc-ui-BFt8agAI.es.js → create-super-doc-ui-Dc8dQAMc.es.js} +89 -137
  12. package/dist/chunks/{create-super-doc-ui-BAGOnYGM.cjs → create-super-doc-ui-L60GhVAX.cjs} +211 -259
  13. package/dist/collaboration-upgrade-engine.cjs +1 -1
  14. package/dist/collaboration-upgrade-engine.es.js +1 -1
  15. package/dist/document-api/src/capabilities/html-markdown-support.d.ts +4 -6
  16. package/dist/document-api/src/comments/comments.d.ts +2 -0
  17. package/dist/document-api/src/contract/command-catalog.d.ts +1 -1
  18. package/dist/document-api/src/contract/operation-definitions.d.ts +2 -2
  19. package/dist/document-api/src/contract/operation-registry.d.ts +10 -9
  20. package/dist/document-api/src/index.d.ts +8 -7
  21. package/dist/document-api/src/insert/insert.d.ts +2 -2
  22. package/dist/document-api/src/replace/replace.d.ts +3 -2
  23. package/dist/document-api/src/types/address.d.ts +3 -0
  24. package/dist/document-api/src/types/temporary-mutation.d.ts +5 -1
  25. package/dist/document-api/src/write/write.d.ts +12 -6
  26. package/dist/public/ui-react.cjs +1 -1
  27. package/dist/public/ui-react.es.js +1 -1
  28. package/dist/public/ui-vue.cjs +1 -1
  29. package/dist/public/ui-vue.es.js +1 -1
  30. package/dist/public/ui.cjs +1 -1
  31. package/dist/public/ui.es.js +1 -1
  32. package/dist/style.css +1 -1
  33. package/dist/style.layered.css +1 -1
  34. package/dist/superdoc/src/SuperDoc.vue.d.ts +132 -58
  35. package/dist/superdoc/src/components/CommentsLayer/CommentDialog.vue.d.ts +28 -13
  36. package/dist/superdoc/src/components/CommentsLayer/collect-removed-comment-ids.d.ts +11 -1
  37. package/dist/superdoc/src/components/CommentsLayer/collect-tracked-change-thread.d.ts +19 -2
  38. package/dist/superdoc/src/components/CommentsLayer/comment-urls.d.ts +1 -1
  39. package/dist/superdoc/src/components/CommentsLayer/commentsList/super-comments-list.d.ts +23 -20
  40. package/dist/superdoc/src/components/CommentsLayer/floating-comment-positioning.d.ts +24 -23
  41. package/dist/superdoc/src/components/CommentsLayer/helpers.d.ts +1 -4
  42. package/dist/superdoc/src/components/CommentsLayer/tracked-change-threading.d.ts +16 -2
  43. package/dist/superdoc/src/components/CommentsLayer/use-comment.d.ts +28 -13
  44. package/dist/superdoc/src/components/PdfViewer/PdfViewer.vue.d.ts +132 -45
  45. package/dist/superdoc/src/components/PdfViewer/PdfViewerDocument.vue.d.ts +62 -16
  46. package/dist/superdoc/src/components/PdfViewer/PdfViewerPage.vue.d.ts +77 -17
  47. package/dist/superdoc/src/components/PdfViewer/pdf-viewer-types.d.ts +45 -0
  48. package/dist/superdoc/src/components/Whiteboard/WhiteboardLayer.vue.d.ts +80 -16
  49. package/dist/superdoc/src/components/Whiteboard/WhiteboardPage.vue.d.ts +48 -13
  50. package/dist/superdoc/src/components/Whiteboard/use-whiteboard.d.ts +30 -15
  51. package/dist/superdoc/src/components/Whiteboard/whiteboard-types.d.ts +13 -0
  52. package/dist/superdoc/src/components/surfaces/focusable-selector.d.ts +1 -5
  53. package/dist/superdoc/src/components/surfaces/watermark-surface-runtime.d.ts +7 -7
  54. package/dist/superdoc/src/composables/find-shortcut-owner.d.ts +16 -9
  55. package/dist/superdoc/src/composables/replace-continuation.d.ts +11 -15
  56. package/dist/superdoc/src/composables/use-comment-small-screen.d.ts +11 -7
  57. package/dist/superdoc/src/composables/use-compact-comment-popover.d.ts +44 -18
  58. package/dist/superdoc/src/composables/use-document.d.ts +1210 -30
  59. package/dist/superdoc/src/composables/use-field.d.ts +88 -25
  60. package/dist/superdoc/src/composables/use-find-replace.d.ts +13 -3
  61. package/dist/superdoc/src/composables/use-password-prompt.d.ts +23 -24
  62. package/dist/superdoc/src/composables/use-viewport-fit.d.ts +62 -26
  63. package/dist/superdoc/src/composables/useUiFontFamily.d.ts +3 -11
  64. package/dist/superdoc/src/core/SuperDoc.d.ts +4 -4
  65. package/dist/superdoc/src/core/collaboration/collaboration-comments.d.ts +9 -4
  66. package/dist/superdoc/src/core/collaboration/helpers.d.ts +20 -3
  67. package/dist/superdoc/src/core/collaboration/permissions.d.ts +15 -10
  68. package/dist/superdoc/src/core/collaboration/resolve-v2-collaboration-target.d.ts +4 -3
  69. package/dist/superdoc/src/core/collaboration/v2-awareness-bridge.d.ts +2 -1
  70. package/dist/superdoc/src/core/config/merge-comments-config.d.ts +1 -5
  71. package/dist/superdoc/src/core/config/merge-defined.d.ts +3 -8
  72. package/dist/superdoc/src/core/config/normalize-hyperlinks-config.d.ts +7 -12
  73. package/dist/superdoc/src/core/config/normalize-surfaces-config.d.ts +9 -12
  74. package/dist/superdoc/src/core/config/normalize-ui-config.d.ts +1 -12
  75. package/dist/superdoc/src/core/create-app.d.ts +13 -24
  76. package/dist/superdoc/src/core/editor-runtime/conformance/fake-v2-runtime.d.ts +2 -1
  77. package/dist/superdoc/src/core/editor-runtime/editor-runtime-registry.d.ts +2 -1
  78. package/dist/superdoc/src/core/editor-runtime/index.d.ts +1 -1
  79. package/dist/superdoc/src/core/editor-runtime/types.d.ts +2 -1
  80. package/dist/superdoc/src/core/editor-runtime/v2/v2-session-shortcut-routes.d.ts +1 -1
  81. package/dist/superdoc/src/core/helpers/export.d.ts +3 -2
  82. package/dist/superdoc/src/core/helpers/file.d.ts +8 -45
  83. package/dist/superdoc/src/core/helpers/normalize-track-changes-config.d.ts +6 -60
  84. package/dist/superdoc/src/core/pdf/helpers/constants.d.ts +2 -2
  85. package/dist/superdoc/src/core/pdf/helpers/floor.d.ts +1 -1
  86. package/dist/superdoc/src/core/pdf/helpers/range.d.ts +1 -1
  87. package/dist/superdoc/src/core/pdf/helpers/read-file.d.ts +1 -1
  88. package/dist/superdoc/src/core/pdf/pdf-adapter.d.ts +28 -61
  89. package/dist/superdoc/src/core/superdoc-ui-owner.d.ts +1 -1
  90. package/dist/superdoc/src/core/surface-manager.d.ts +21 -83
  91. package/dist/superdoc/src/core/types/index.d.ts +41 -23
  92. package/dist/superdoc/src/core/v2-integration/browser-peer-runtime.d.ts +5 -3
  93. package/dist/superdoc/src/core/v2-integration/cdn-engine-loader.d.ts +3 -13
  94. package/dist/superdoc/src/core/v2-integration/internal-vue-runtime.d.ts +64 -59
  95. package/dist/superdoc/src/core/v2-integration/v2-integration.d.ts +10 -10
  96. package/dist/superdoc/src/core/whiteboard/Whiteboard.d.ts +22 -208
  97. package/dist/superdoc/src/core/whiteboard/WhiteboardPage.d.ts +163 -189
  98. package/dist/superdoc/src/core/whiteboard/helpers/createTextarea.d.ts +14 -1
  99. package/dist/superdoc/src/core/whiteboard/helpers/flattenPoints.d.ts +1 -1
  100. package/dist/superdoc/src/core/whiteboard/helpers/getRandomId.d.ts +1 -1
  101. package/dist/superdoc/src/helpers/comment-focus.d.ts +21 -4
  102. package/dist/superdoc/src/helpers/deprecation.d.ts +5 -11
  103. package/dist/superdoc/src/helpers/interaction-trace.d.ts +7 -24
  104. package/dist/superdoc/src/helpers/mark-raw-component.d.ts +1 -0
  105. package/dist/superdoc/src/helpers/object-guards.d.ts +2 -5
  106. package/dist/superdoc/src/helpers/selection-source.d.ts +1 -1
  107. package/dist/superdoc/src/helpers/use-selection.d.ts +35 -15
  108. package/dist/superdoc/src/helpers/v2-author-required-rejection.d.ts +8 -11
  109. package/dist/superdoc/src/helpers/v2-bulk-decision-event.d.ts +9 -7
  110. package/dist/superdoc/src/helpers/v2-keyboard-edit-rejection.d.ts +8 -7
  111. package/dist/superdoc/src/helpers/v2-mutation-exception.d.ts +12 -8
  112. package/dist/superdoc/src/helpers/v2-review-target.d.ts +11 -1
  113. package/dist/superdoc/src/helpers/v2-selection-sync.d.ts +40 -14
  114. package/dist/superdoc/src/helpers/v2-typing-mutation-event.d.ts +14 -5
  115. package/dist/superdoc/src/icons.d.ts +11 -19
  116. package/dist/superdoc/src/internal/diagnostics/diagnostic-dedupe.d.ts +6 -15
  117. package/dist/superdoc/src/internal/diagnostics/translate-diagnostic.d.ts +6 -4
  118. package/dist/superdoc/src/internal/toolbar/built-in/AIWriter.vue.d.ts +2 -2
  119. package/dist/superdoc/src/internal/toolbar/built-in/ButtonGroup.vue.d.ts +4 -24
  120. package/dist/superdoc/src/internal/toolbar/built-in/FontFamilyCombobox.vue.d.ts +34 -0
  121. package/dist/superdoc/src/internal/toolbar/built-in/FontSizeCombobox.vue.d.ts +34 -0
  122. package/dist/superdoc/src/internal/toolbar/built-in/LinkInput.vue.d.ts +1 -1
  123. package/dist/superdoc/src/internal/toolbar/built-in/PageNumberMenu.vue.d.ts +25 -15
  124. package/dist/superdoc/src/internal/toolbar/built-in/Toolbar.vue.d.ts +9 -3
  125. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarComboBox.vue.d.ts +12 -14
  126. package/dist/superdoc/src/internal/toolbar/built-in/ToolbarDropdown.vue.d.ts +1 -11
  127. package/dist/superdoc/src/internal/toolbar/built-in/color-dropdown-helpers.d.ts +9 -19
  128. package/dist/superdoc/src/internal/toolbar/built-in/constants.d.ts +14 -45
  129. package/dist/superdoc/src/internal/toolbar/built-in/default-items.d.ts +34 -17
  130. package/dist/superdoc/src/internal/toolbar/built-in/font-options.d.ts +15 -1
  131. package/dist/superdoc/src/internal/toolbar/built-in/font-typeahead.d.ts +37 -7
  132. package/dist/superdoc/src/internal/toolbar/built-in/format-negation.d.ts +10 -4
  133. package/dist/superdoc/src/internal/toolbar/built-in/general.d.ts +12 -1
  134. package/dist/superdoc/src/internal/toolbar/built-in/helpers.d.ts +9 -4
  135. package/dist/superdoc/src/internal/toolbar/built-in/list-style-buttons.d.ts +2 -2
  136. package/dist/superdoc/src/internal/toolbar/built-in/page-number-feedback.d.ts +4 -5
  137. package/dist/superdoc/src/internal/toolbar/built-in/scroll-helpers.d.ts +3 -4
  138. package/dist/superdoc/src/internal/toolbar/built-in/toolbar-focus-helpers.d.ts +10 -2
  139. package/dist/superdoc/src/internal/toolbar/built-in/toolbarIcons.d.ts +78 -145
  140. package/dist/superdoc/src/internal/toolbar/built-in/toolbarTexts.d.ts +61 -61
  141. package/dist/superdoc/src/internal/toolbar/built-in/url-safety.d.ts +11 -3
  142. package/dist/superdoc/src/internal/toolbar/built-in/use-toolbar-item.d.ts +110 -48
  143. package/dist/superdoc/src/internal/toolbar/built-in-toolbar.d.ts +11 -30
  144. package/dist/superdoc/src/internal/toolbar/compatibility-catalog.d.ts +4 -3
  145. package/dist/superdoc/src/internal/toolbar/image-upload.d.ts +29 -39
  146. package/dist/superdoc/src/internal/toolbar/toolbar-item-aliases.d.ts +1 -1
  147. package/dist/superdoc/src/public/browser-document-api.d.ts +5 -4
  148. package/dist/superdoc/src/public/index.d.cts +26 -0
  149. package/dist/superdoc/src/public/index.d.ts +13 -0
  150. package/dist/superdoc/src/public/ui/commands.d.ts +14 -13
  151. package/dist/superdoc/src/public/ui/create-super-doc-ui.d.ts +1 -1
  152. package/dist/superdoc/src/public/ui/entity-at.d.ts +2 -1
  153. package/dist/superdoc/src/public/ui/format-painter-helpers.d.ts +2 -8
  154. package/dist/superdoc/src/public/ui/style-match-patch.d.ts +2 -2
  155. package/dist/superdoc/src/public/ui/types.d.ts +1 -1
  156. package/dist/superdoc/src/stores/comments-store.d.ts +231 -105
  157. package/dist/superdoc/src/stores/helpers/comment-document-scope.d.ts +22 -0
  158. package/dist/superdoc/src/stores/helpers/comment-grouping.d.ts +30 -0
  159. package/dist/superdoc/src/stores/helpers/comment-identity.d.ts +40 -0
  160. package/dist/superdoc/src/stores/helpers/floating-comment-instances.d.ts +48 -13
  161. package/dist/superdoc/src/stores/helpers/pending-selection-snapshot.d.ts +17 -0
  162. package/dist/superdoc/src/stores/helpers/tracked-change-compaction.d.ts +16 -0
  163. package/dist/superdoc/src/stores/helpers/tracked-change-decision.d.ts +45 -0
  164. package/dist/superdoc/src/stores/helpers/tracked-change-identity.d.ts +19 -0
  165. package/dist/superdoc/src/stores/helpers/tracked-change-row-values.d.ts +0 -4
  166. package/dist/superdoc/src/stores/helpers/tracked-change-thread-index.d.ts +21 -24
  167. package/dist/superdoc/src/stores/superdoc-store.d.ts +694 -316
  168. package/dist/superdoc.cjs +1804 -2782
  169. package/dist/superdoc.es.js +1720 -2699
  170. package/dist-cdn/style.layered.css +1 -1
  171. package/dist-cdn/superdoc.min.css +1 -1
  172. package/dist-cdn/superdoc.min.js +42 -42
  173. package/package.json +3 -2
  174. package/dist/superdoc/src/internal/toolbar/index.d.ts +0 -10
  175. package/dist/superdoc/src/main.d.ts +0 -1
@@ -6,38 +6,82 @@ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import
6
6
  superdocRoot: HTMLDivElement;
7
7
  layers: HTMLDivElement;
8
8
  selectionLayer: HTMLDivElement;
9
- pdfViewerRef: (import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{}> & Readonly<{}>, {
10
- updateScale: (nextScale: any) => void;
11
- $emit: (event: "page-rendered" | "selection-raw" | "bypass-selection" | "pages-loaded" | "document-loaded" | "document-ready" | "document-error", ...args: any[]) => void;
12
- file: Record<string, any>;
13
- config: Record<string, any>;
14
- initialScale: number;
15
- fileId?: string | undefined;
16
- $props: {
17
- readonly file?: Record<string, any> | undefined;
18
- readonly config?: Record<string, any> | undefined;
19
- readonly initialScale?: number | undefined;
20
- readonly fileId?: string | undefined;
9
+ pdfViewerRef: (import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
10
+ config: {
11
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerConfig>;
12
+ required: true;
13
+ };
14
+ file: {
15
+ type: import('vue').PropType<Blob | null>;
16
+ required: true;
17
+ };
18
+ fileId: {
19
+ type: StringConstructor;
21
20
  };
22
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
21
+ initialScale: {
22
+ type: NumberConstructor;
23
+ default: number;
24
+ };
25
+ }>> & Readonly<{
26
+ "onPage-rendered"?: ((...args: any[]) => any) | undefined;
27
+ "onSelection-raw"?: ((...args: any[]) => any) | undefined;
28
+ "onBypass-selection"?: ((...args: any[]) => any) | undefined;
29
+ "onPages-loaded"?: ((...args: any[]) => any) | undefined;
30
+ "onDocument-loaded"?: ((...args: any[]) => any) | undefined;
31
+ "onDocument-ready"?: ((...args: any[]) => any) | undefined;
32
+ "onDocument-error"?: ((...args: any[]) => any) | undefined;
33
+ }>, {
34
+ updateScale: (nextScale: number) => void;
35
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
36
+ "page-rendered": (...args: any[]) => void;
37
+ "selection-raw": (...args: any[]) => void;
38
+ "bypass-selection": (...args: any[]) => void;
39
+ "pages-loaded": (...args: any[]) => void;
40
+ "document-loaded": (...args: any[]) => void;
41
+ "document-ready": (...args: any[]) => void;
42
+ "document-error": (...args: any[]) => void;
43
+ }, import('vue').PublicProps, {
44
+ initialScale: number;
45
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
23
46
  rootRef: HTMLDivElement;
24
- documentRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{}> & Readonly<{}>, {
25
- $emit: (event: "page-rendered" | "page-error" | "selection-raw" | "bypass-selection" | "page-focus", ...args: any[]) => void;
26
- pages: unknown[];
27
- config: Record<string, any>;
28
- hasTextLayer: boolean;
29
- scale?: number | undefined;
30
- pdf?: Record<string, any> | undefined;
31
- outputScale?: number | undefined;
32
- $props: {
33
- readonly pages?: unknown[] | undefined;
34
- readonly config?: Record<string, any> | undefined;
35
- readonly hasTextLayer?: boolean | undefined;
36
- readonly scale?: number | undefined;
37
- readonly pdf?: Record<string, any> | undefined;
38
- readonly outputScale?: number | undefined;
47
+ documentRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
48
+ config: {
49
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerConfig>;
50
+ required: true;
39
51
  };
40
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
52
+ pdf: {
53
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerDocumentData | null>;
54
+ };
55
+ pages: {
56
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerPageData[]>;
57
+ required: true;
58
+ };
59
+ scale: {
60
+ type: NumberConstructor;
61
+ required: true;
62
+ };
63
+ hasTextLayer: {
64
+ type: BooleanConstructor;
65
+ default: boolean;
66
+ };
67
+ outputScale: {
68
+ type: NumberConstructor;
69
+ };
70
+ }>> & Readonly<{
71
+ "onPage-rendered"?: ((...args: any[]) => any) | undefined;
72
+ "onPage-error"?: ((...args: any[]) => any) | undefined;
73
+ "onSelection-raw"?: ((...args: any[]) => any) | undefined;
74
+ "onBypass-selection"?: ((...args: any[]) => any) | undefined;
75
+ "onPage-focus"?: ((...args: any[]) => any) | undefined;
76
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
77
+ "page-rendered": (...args: any[]) => void;
78
+ "page-error": (...args: any[]) => void;
79
+ "selection-raw": (...args: any[]) => void;
80
+ "bypass-selection": (...args: any[]) => void;
81
+ "page-focus": (...args: any[]) => void;
82
+ }, import('vue').PublicProps, {
83
+ hasTextLayer: boolean;
84
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
41
85
  documentRef: HTMLDivElement;
42
86
  documentWrapper: HTMLDivElement;
43
87
  }, HTMLDivElement, import('vue').ComponentProvideOptions, {
@@ -47,23 +91,38 @@ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import
47
91
  C: {};
48
92
  M: {};
49
93
  Defaults: {};
50
- }, Readonly<{}> & Readonly<{}>, {
51
- $emit: (event: "page-rendered" | "page-error" | "selection-raw" | "bypass-selection" | "page-focus", ...args: any[]) => void;
52
- pages: unknown[];
53
- config: Record<string, any>;
54
- hasTextLayer: boolean;
55
- scale?: number | undefined;
56
- pdf?: Record<string, any> | undefined;
57
- outputScale?: number | undefined;
58
- $props: {
59
- readonly pages?: unknown[] | undefined;
60
- readonly config?: Record<string, any> | undefined;
61
- readonly hasTextLayer?: boolean | undefined;
62
- readonly scale?: number | undefined;
63
- readonly pdf?: Record<string, any> | undefined;
64
- readonly outputScale?: number | undefined;
94
+ }, Readonly<import('vue').ExtractPropTypes<{
95
+ config: {
96
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerConfig>;
97
+ required: true;
98
+ };
99
+ pdf: {
100
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerDocumentData | null>;
101
+ };
102
+ pages: {
103
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerPageData[]>;
104
+ required: true;
105
+ };
106
+ scale: {
107
+ type: NumberConstructor;
108
+ required: true;
109
+ };
110
+ hasTextLayer: {
111
+ type: BooleanConstructor;
112
+ default: boolean;
113
+ };
114
+ outputScale: {
115
+ type: NumberConstructor;
65
116
  };
66
- }, {}, {}, {}, {}> | null;
117
+ }>> & Readonly<{
118
+ "onPage-rendered"?: ((...args: any[]) => any) | undefined;
119
+ "onPage-error"?: ((...args: any[]) => any) | undefined;
120
+ "onSelection-raw"?: ((...args: any[]) => any) | undefined;
121
+ "onBypass-selection"?: ((...args: any[]) => any) | undefined;
122
+ "onPage-focus"?: ((...args: any[]) => any) | undefined;
123
+ }>, {}, {}, {}, {}, {
124
+ hasTextLayer: boolean;
125
+ }> | null;
67
126
  }, HTMLDivElement, import('vue').ComponentProvideOptions, {
68
127
  P: {};
69
128
  B: {};
@@ -71,20 +130,35 @@ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import
71
130
  C: {};
72
131
  M: {};
73
132
  Defaults: {};
74
- }, Readonly<{}> & Readonly<{}>, {
75
- updateScale: (nextScale: any) => void;
76
- $emit: (event: "page-rendered" | "selection-raw" | "bypass-selection" | "pages-loaded" | "document-loaded" | "document-ready" | "document-error", ...args: any[]) => void;
77
- file: Record<string, any>;
78
- config: Record<string, any>;
79
- initialScale: number;
80
- fileId?: string | undefined;
81
- $props: {
82
- readonly file?: Record<string, any> | undefined;
83
- readonly config?: Record<string, any> | undefined;
84
- readonly initialScale?: number | undefined;
85
- readonly fileId?: string | undefined;
133
+ }, Readonly<import('vue').ExtractPropTypes<{
134
+ config: {
135
+ type: import('vue').PropType<import('./components/PdfViewer/pdf-viewer-types.js').PdfViewerConfig>;
136
+ required: true;
137
+ };
138
+ file: {
139
+ type: import('vue').PropType<Blob | null>;
140
+ required: true;
86
141
  };
87
- }, {}, {}, {}, {}> | null)[];
142
+ fileId: {
143
+ type: StringConstructor;
144
+ };
145
+ initialScale: {
146
+ type: NumberConstructor;
147
+ default: number;
148
+ };
149
+ }>> & Readonly<{
150
+ "onPage-rendered"?: ((...args: any[]) => any) | undefined;
151
+ "onSelection-raw"?: ((...args: any[]) => any) | undefined;
152
+ "onBypass-selection"?: ((...args: any[]) => any) | undefined;
153
+ "onPages-loaded"?: ((...args: any[]) => any) | undefined;
154
+ "onDocument-loaded"?: ((...args: any[]) => any) | undefined;
155
+ "onDocument-ready"?: ((...args: any[]) => any) | undefined;
156
+ "onDocument-error"?: ((...args: any[]) => any) | undefined;
157
+ }>, {
158
+ updateScale: (nextScale: number) => void;
159
+ }, {}, {}, {}, {
160
+ initialScale: number;
161
+ }> | null)[];
88
162
  rightSidebarRef: HTMLDivElement;
89
163
  }, HTMLDivElement>;
90
164
  export default _default;
@@ -149,21 +149,31 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
149
149
  isInternal: boolean;
150
150
  commentText: string;
151
151
  selection: {
152
- documentId: any;
153
- page: any;
154
- selectionBounds: any;
152
+ documentId: unknown;
153
+ page: number | undefined;
154
+ selectionBounds: {
155
+ top?: number | undefined;
156
+ left?: number | undefined;
157
+ right?: number | undefined;
158
+ bottom?: number | undefined;
159
+ };
155
160
  getValues: () => {
156
- documentId: any;
157
- page: any;
158
- selectionBounds: any;
159
- source: any;
161
+ documentId: unknown;
162
+ page: number | undefined;
163
+ selectionBounds: {
164
+ top?: number;
165
+ left?: number;
166
+ right?: number;
167
+ bottom?: number;
168
+ };
169
+ source: string | null | undefined;
160
170
  };
161
171
  getContainerId: () => string;
162
- getContainerLocation: (parentContainer: any) => {
172
+ getContainerLocation: (parentContainer: Pick<Element, "getBoundingClientRect"> | null | undefined) => {
163
173
  top: number;
164
174
  left: number;
165
175
  };
166
- source: any;
176
+ source: string | null | undefined;
167
177
  };
168
178
  floatingPosition: {
169
179
  top?: number | undefined;
@@ -300,10 +310,15 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
300
310
  isInternal: boolean;
301
311
  commentText: string;
302
312
  selection: {
303
- documentId: any;
304
- page: any;
305
- selectionBounds: any;
306
- source: any;
313
+ documentId: unknown;
314
+ page: number | undefined;
315
+ selectionBounds: {
316
+ top?: number;
317
+ left?: number;
318
+ right?: number;
319
+ bottom?: number;
320
+ };
321
+ source: string | null | undefined;
307
322
  } | null;
308
323
  trackedChange: boolean | undefined;
309
324
  trackedChangeText: string | null;
@@ -1 +1,11 @@
1
- export function collectRemovedCommentIds(comments: ReadonlyArray<Record<string, any>>, targetIds: ReadonlyArray<string>, isInScope?: (comment: Record<string, any>) => boolean): Set<string>;
1
+ import { TrackedChangeThreadSource } from './tracked-change-threading.js';
2
+ type RemovableComment = TrackedChangeThreadSource<unknown> & {
3
+ commentId?: unknown;
4
+ importedId?: unknown;
5
+ parentCommentId?: unknown;
6
+ };
7
+ /**
8
+ * Expand deleted comment ids through comment and tracked-change descendants.
9
+ */
10
+ export declare const collectRemovedCommentIds: <Comment extends RemovableComment>(comments: ReadonlyArray<Comment>, targetIds: ReadonlyArray<string>, isInScope?: (comment: Comment) => boolean) => Set<string>;
11
+ export {};
@@ -1,6 +1,23 @@
1
- export function collectTrackedChangeThread<Comment extends {
1
+ /**
2
+ * Collect every comment that should appear inside the tracked-change dialog
3
+ * for `parentComment`. Walks two sources of membership:
4
+ *
5
+ * 1. **Seed**: comments explicitly threaded to this TC via
6
+ * `trackedChangeThreadParentId`
7
+ * whose conversational thread *starts here* (no `parentCommentId`),
8
+ * plus direct replies whose stored or UI-threading parent points at
9
+ * `parentComment.commentId`.
10
+ * 2. **BFS**: replies-of-replies — any comment whose `parentCommentId`
11
+ * points to something already in the thread.
12
+ *
13
+ * Pure function — no side effects, no Vue, no store. Extracted from
14
+ * CommentDialog.vue so the logic can be unit-tested in isolation.
15
+ *
16
+ * Returns the comments belonging to this tracked-change thread, in original list order.
17
+ */
18
+ export declare const collectTrackedChangeThread: <Comment extends {
2
19
  commentId: string;
3
20
  parentCommentId?: string | null;
4
21
  threadingParentCommentId?: string | null;
5
22
  trackedChangeThreadParentId?: string | null;
6
- }>(parentComment: Comment, allComments: ReadonlyArray<Comment>): Array<Comment>;
23
+ }>(parentComment: Comment, allComments: ReadonlyArray<Comment>) => Array<Comment>;
@@ -1,2 +1,2 @@
1
1
  /** Render links without rewriting stored comment HTML or its rich-text structure. */
2
- export function renderCommentHtml(value: any): string;
2
+ export declare function renderCommentHtml(value: unknown): string;
@@ -1,33 +1,36 @@
1
1
  import { EventEmitter } from 'eventemitter3';
2
+ import { App, ComponentPublicInstance } from 'vue';
3
+ import { SuperDoc } from '../../../core/types/index.js';
4
+ type DirectoryFamily = 'comments' | 'trackChanges';
5
+ type DirectoryItems = Record<DirectoryFamily, readonly unknown[] | null>;
6
+ type SuperCommentsConfig = {
7
+ comments: unknown[];
8
+ element: Element | string | null | undefined;
9
+ commentsStore: unknown;
10
+ selector?: string;
11
+ [key: string]: unknown;
12
+ };
13
+ type SuperCommentsOptions = Partial<SuperCommentsConfig>;
2
14
  /**
3
15
  * Comments list renderer (not floating comments)
4
16
  *
5
17
  * This renders a list of comments into an element, connected to main SuperDoc instance
6
18
  */
7
- export class SuperComments extends EventEmitter<string | symbol, any> {
8
- constructor(options: any, superdoc: any);
9
- element: any;
10
- config: {
11
- comments: never[];
12
- element: null;
13
- commentsStore: null;
14
- };
15
- app: import('vue').App<Element> | null;
16
- superdoc: any;
17
- stopDirectoryObservers: any[];
18
- directorySnapshots: {
19
- comments: null;
20
- trackChanges: null;
21
- };
22
- directoryItemRefs: {
23
- comments: null;
24
- trackChanges: null;
25
- };
19
+ export declare class SuperComments extends EventEmitter {
20
+ element: Element | string | null | undefined;
21
+ config: SuperCommentsConfig;
22
+ app: App | null;
23
+ superdoc: SuperDoc;
24
+ container: ComponentPublicInstance | null | undefined;
25
+ stopDirectoryObservers: Array<() => void>;
26
+ directorySnapshots: DirectoryItems;
27
+ directoryItemRefs: DirectoryItems;
26
28
  directoryGeneration: number;
29
+ constructor(options: SuperCommentsOptions | undefined, superdoc: SuperDoc);
27
30
  syncDirectory(): void;
28
31
  startDirectoryObservers(): void;
29
32
  createVueApp(): void;
30
- container: import('vue').ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import('vue').ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, import('vue').ComponentProvideOptions>, {}, {}, "", {}, any> | null | undefined;
31
33
  close(): void;
32
34
  open(): void;
33
35
  }
36
+ export {};
@@ -1,25 +1,26 @@
1
- export function normalizeFloatingAnchorTop(top: any): any;
2
- export function isAnchorOutsideFloatingViewport(anchorTop: any, viewportTop: any, viewportBottom: any, anchorBottom?: any): boolean;
3
- export function shouldKeepFloatingCardAtAnchor({ anchorTop, anchorBottom, viewportTop, viewportBottom }: {
4
- anchorTop: any;
5
- anchorBottom: any;
6
- viewportTop: any;
7
- viewportBottom: any;
8
- }): boolean;
9
- export function resolveOffscreenFloatingCardTop({ anchorTop, anchorBottom, cardHeight, viewportTop, viewportBottom, }: {
10
- anchorTop: any;
11
- anchorBottom: any;
12
- cardHeight: any;
13
- viewportTop: any;
14
- viewportBottom: any;
15
- }): any;
16
- export function shouldMountFloatingCommentDialog({ id, visibleIds, activeCommentInstanceId }: {
17
- id: any;
18
- visibleIds: any;
19
- activeCommentInstanceId: any;
20
- }): boolean;
21
- export function resolveRemovedReviewCardContinuityTarget({ previousIds, currentIds, removedId }: {
1
+ type OptionalNumber = number | null | undefined;
2
+ type FloatingAnchorGeometry = {
3
+ anchorTop: OptionalNumber;
4
+ anchorBottom?: OptionalNumber;
5
+ viewportTop: OptionalNumber;
6
+ viewportBottom: OptionalNumber;
7
+ };
8
+ type OffscreenFloatingCardInput = FloatingAnchorGeometry & {
9
+ cardHeight: OptionalNumber;
10
+ };
11
+ type FloatingCommentDialogMountInput = {
12
+ id: string | null | undefined;
13
+ visibleIds?: ReadonlySet<string> | null;
14
+ activeCommentInstanceId?: string | null;
15
+ };
16
+ type RemovedReviewCardContinuityInput = {
22
17
  previousIds: readonly string[];
23
18
  currentIds: ReadonlySet<string>;
24
- removedId: string;
25
- }): string | null;
19
+ removedId: string | null | undefined;
20
+ };
21
+ export declare const isAnchorOutsideFloatingViewport: (anchorTop: OptionalNumber, viewportTop: OptionalNumber, viewportBottom: OptionalNumber, anchorBottom?: OptionalNumber) => boolean;
22
+ export declare const shouldKeepFloatingCardAtAnchor: ({ anchorTop, anchorBottom, viewportTop, viewportBottom, }: FloatingAnchorGeometry) => boolean;
23
+ export declare const resolveOffscreenFloatingCardTop: ({ anchorTop, anchorBottom, cardHeight, viewportTop, viewportBottom, }: OffscreenFloatingCardInput) => number | null;
24
+ export declare const shouldMountFloatingCommentDialog: ({ id, visibleIds, activeCommentInstanceId, }: FloatingCommentDialogMountInput) => boolean;
25
+ export declare const resolveRemovedReviewCardContinuityTarget: ({ previousIds, currentIds, removedId, }: RemovedReviewCardContinuityInput) => string | null;
26
+ export {};
@@ -1,7 +1,4 @@
1
1
  /**
2
2
  * Comments helper to format dates from timestamp
3
- *
4
- * @param {Number} timestamp The timestamp to format
5
- * @returns {String} The formatted date
6
3
  */
7
- export function formatDate(timestamp: number): string;
4
+ export declare function formatDate(timestamp: number): string;
@@ -1,2 +1,16 @@
1
- export function hasLegacyTrackedChangeThreadSignal(comment: Record<string, any> | null | undefined): boolean;
2
- export function trackedChangeThreadParentIdForComment(comment: Record<string, any> | null | undefined): string | number | null;
1
+ export type TrackedChangeThreadSource<Id> = {
2
+ trackedChangeThreadParentId?: Id | null;
3
+ trackedChangeParentId?: Id | null;
4
+ trackedChangeLink?: unknown;
5
+ trackedChangeType?: unknown;
6
+ trackedChangeDisplayType?: unknown;
7
+ trackedChangeText?: unknown;
8
+ deletedText?: unknown;
9
+ trackedChange?: unknown;
10
+ };
11
+ /**
12
+ * Resolve explicit thread provenance first, then the guarded legacy fallback.
13
+ * Spatial-only v2 comments carry neither the explicit field nor a legacy
14
+ * review signal and therefore remain standalone.
15
+ */
16
+ export declare const trackedChangeThreadParentIdForComment: <Id>(comment: TrackedChangeThreadSource<Id> | null | undefined) => Id | null;
@@ -149,21 +149,31 @@ export default function useComment(params: UseCommentParams): {
149
149
  isInternal: boolean;
150
150
  commentText: string;
151
151
  selection: {
152
- documentId: any;
153
- page: any;
154
- selectionBounds: any;
152
+ documentId: unknown;
153
+ page: number | undefined;
154
+ selectionBounds: {
155
+ top?: number | undefined;
156
+ left?: number | undefined;
157
+ right?: number | undefined;
158
+ bottom?: number | undefined;
159
+ };
155
160
  getValues: () => {
156
- documentId: any;
157
- page: any;
158
- selectionBounds: any;
159
- source: any;
161
+ documentId: unknown;
162
+ page: number | undefined;
163
+ selectionBounds: {
164
+ top?: number;
165
+ left?: number;
166
+ right?: number;
167
+ bottom?: number;
168
+ };
169
+ source: string | null | undefined;
160
170
  };
161
171
  getContainerId: () => string;
162
- getContainerLocation: (parentContainer: any) => {
172
+ getContainerLocation: (parentContainer: Pick<Element, "getBoundingClientRect"> | null | undefined) => {
163
173
  top: number;
164
174
  left: number;
165
175
  };
166
- source: any;
176
+ source: string | null | undefined;
167
177
  };
168
178
  floatingPosition: {
169
179
  top?: number | undefined;
@@ -253,10 +263,15 @@ export default function useComment(params: UseCommentParams): {
253
263
  isInternal: boolean;
254
264
  commentText: string;
255
265
  selection: {
256
- documentId: any;
257
- page: any;
258
- selectionBounds: any;
259
- source: any;
266
+ documentId: unknown;
267
+ page: number | undefined;
268
+ selectionBounds: {
269
+ top?: number;
270
+ left?: number;
271
+ right?: number;
272
+ bottom?: number;
273
+ };
274
+ source: string | null | undefined;
260
275
  } | null;
261
276
  trackedChange: boolean | undefined;
262
277
  trackedChangeText: string | null;