@jacktea/pdf-viewer-component 0.1.5

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 (285) hide show
  1. package/README.md +45 -0
  2. package/dist/annotations/annotation-layer.d.ts +40 -0
  3. package/dist/annotations/annotation-layer.d.ts.map +1 -0
  4. package/dist/annotations/annotation-layer.test.d.ts +2 -0
  5. package/dist/annotations/annotation-layer.test.d.ts.map +1 -0
  6. package/dist/annotations/interaction/annotation-interaction-controller.d.ts +59 -0
  7. package/dist/annotations/interaction/annotation-interaction-controller.d.ts.map +1 -0
  8. package/dist/annotations/interaction/tool-utils.d.ts +11 -0
  9. package/dist/annotations/interaction/tool-utils.d.ts.map +1 -0
  10. package/dist/annotations/rendering/annotation-svg-renderer.d.ts +28 -0
  11. package/dist/annotations/rendering/annotation-svg-renderer.d.ts.map +1 -0
  12. package/dist/annotations/rendering/annotation-svg-renderer.test.d.ts +2 -0
  13. package/dist/annotations/rendering/annotation-svg-renderer.test.d.ts.map +1 -0
  14. package/dist/annotations/rendering/geometry-utils.d.ts +6 -0
  15. package/dist/annotations/rendering/geometry-utils.d.ts.map +1 -0
  16. package/dist/annotations/rendering/hit-testing.d.ts +10 -0
  17. package/dist/annotations/rendering/hit-testing.d.ts.map +1 -0
  18. package/dist/annotations/rendering/index.d.ts +3 -0
  19. package/dist/annotations/rendering/index.d.ts.map +1 -0
  20. package/dist/annotations/settings.d.ts +46 -0
  21. package/dist/annotations/settings.d.ts.map +1 -0
  22. package/dist/annotations/types.d.ts +3 -0
  23. package/dist/annotations/types.d.ts.map +1 -0
  24. package/dist/annotations/ui/annotation-metadata.d.ts +12 -0
  25. package/dist/annotations/ui/annotation-metadata.d.ts.map +1 -0
  26. package/dist/annotations/ui/appearance-editor.d.ts +16 -0
  27. package/dist/annotations/ui/appearance-editor.d.ts.map +1 -0
  28. package/dist/annotations/ui/arrow-style-editor.d.ts +17 -0
  29. package/dist/annotations/ui/arrow-style-editor.d.ts.map +1 -0
  30. package/dist/annotations/ui/header-card.d.ts +4 -0
  31. package/dist/annotations/ui/header-card.d.ts.map +1 -0
  32. package/dist/annotations/ui/index.d.ts +8 -0
  33. package/dist/annotations/ui/index.d.ts.map +1 -0
  34. package/dist/annotations/ui/popup-toolbar.d.ts +53 -0
  35. package/dist/annotations/ui/popup-toolbar.d.ts.map +1 -0
  36. package/dist/annotations/ui/popup-toolbar.test.d.ts +2 -0
  37. package/dist/annotations/ui/popup-toolbar.test.d.ts.map +1 -0
  38. package/dist/annotations/ui/stroke-style-editor.d.ts +16 -0
  39. package/dist/annotations/ui/stroke-style-editor.d.ts.map +1 -0
  40. package/dist/annotations/ui/style-pickers.d.ts +82 -0
  41. package/dist/annotations/ui/style-pickers.d.ts.map +1 -0
  42. package/dist/annotations/ui/text-style-editor.d.ts +22 -0
  43. package/dist/annotations/ui/text-style-editor.d.ts.map +1 -0
  44. package/dist/annotations/ui/tool-selector.d.ts +8 -0
  45. package/dist/annotations/ui/tool-selector.d.ts.map +1 -0
  46. package/dist/components/popover.d.ts +25 -0
  47. package/dist/components/popover.d.ts.map +1 -0
  48. package/dist/components/tooltip.d.ts +28 -0
  49. package/dist/components/tooltip.d.ts.map +1 -0
  50. package/dist/coordinators/annotation-coordinator.d.ts +281 -0
  51. package/dist/coordinators/annotation-coordinator.d.ts.map +1 -0
  52. package/dist/coordinators/annotation-coordinator.test.d.ts +2 -0
  53. package/dist/coordinators/annotation-coordinator.test.d.ts.map +1 -0
  54. package/dist/coordinators/event-dispatcher.d.ts +93 -0
  55. package/dist/coordinators/event-dispatcher.d.ts.map +1 -0
  56. package/dist/coordinators/index.d.ts +20 -0
  57. package/dist/coordinators/index.d.ts.map +1 -0
  58. package/dist/coordinators/mode-coordinator.d.ts +74 -0
  59. package/dist/coordinators/mode-coordinator.d.ts.map +1 -0
  60. package/dist/coordinators/panel-coordinator-v2.d.ts +138 -0
  61. package/dist/coordinators/panel-coordinator-v2.d.ts.map +1 -0
  62. package/dist/coordinators/state-sync-manager.d.ts +37 -0
  63. package/dist/coordinators/state-sync-manager.d.ts.map +1 -0
  64. package/dist/coordinators/state-tracker.d.ts +48 -0
  65. package/dist/coordinators/state-tracker.d.ts.map +1 -0
  66. package/dist/coordinators/state-types.d.ts +56 -0
  67. package/dist/coordinators/state-types.d.ts.map +1 -0
  68. package/dist/coordinators/ui-initializer.d.ts +130 -0
  69. package/dist/coordinators/ui-initializer.d.ts.map +1 -0
  70. package/dist/di/container.d.ts +77 -0
  71. package/dist/di/container.d.ts.map +1 -0
  72. package/dist/di/container.test.d.ts +5 -0
  73. package/dist/di/container.test.d.ts.map +1 -0
  74. package/dist/di/index.d.ts +11 -0
  75. package/dist/di/index.d.ts.map +1 -0
  76. package/dist/di/tokens.d.ts +88 -0
  77. package/dist/di/tokens.d.ts.map +1 -0
  78. package/dist/domains/annotation/index.d.ts +9 -0
  79. package/dist/domains/annotation/index.d.ts.map +1 -0
  80. package/dist/domains/annotation/styles.d.ts +23 -0
  81. package/dist/domains/annotation/styles.d.ts.map +1 -0
  82. package/dist/domains/annotation/sync.d.ts +68 -0
  83. package/dist/domains/annotation/sync.d.ts.map +1 -0
  84. package/dist/domains/annotation/sync.test.d.ts +2 -0
  85. package/dist/domains/annotation/sync.test.d.ts.map +1 -0
  86. package/dist/domains/export/index.d.ts +10 -0
  87. package/dist/domains/export/index.d.ts.map +1 -0
  88. package/dist/domains/export/metadata.d.ts +31 -0
  89. package/dist/domains/export/metadata.d.ts.map +1 -0
  90. package/dist/domains/export/metadata.test.d.ts +2 -0
  91. package/dist/domains/export/metadata.test.d.ts.map +1 -0
  92. package/dist/domains/export/pdf-export.d.ts +70 -0
  93. package/dist/domains/export/pdf-export.d.ts.map +1 -0
  94. package/dist/domains/export/pdf-export.test.d.ts +2 -0
  95. package/dist/domains/export/pdf-export.test.d.ts.map +1 -0
  96. package/dist/domains/export/watermark.d.ts +24 -0
  97. package/dist/domains/export/watermark.d.ts.map +1 -0
  98. package/dist/domains/export/watermark.test.d.ts +2 -0
  99. package/dist/domains/export/watermark.test.d.ts.map +1 -0
  100. package/dist/domains/index.d.ts +18 -0
  101. package/dist/domains/index.d.ts.map +1 -0
  102. package/dist/domains/ui/dialogs.d.ts +49 -0
  103. package/dist/domains/ui/dialogs.d.ts.map +1 -0
  104. package/dist/domains/ui/dialogs.test.d.ts +2 -0
  105. package/dist/domains/ui/dialogs.test.d.ts.map +1 -0
  106. package/dist/domains/ui/editors.d.ts +120 -0
  107. package/dist/domains/ui/editors.d.ts.map +1 -0
  108. package/dist/domains/ui/index.d.ts +9 -0
  109. package/dist/domains/ui/index.d.ts.map +1 -0
  110. package/dist/domains/viewer/actions.d.ts +90 -0
  111. package/dist/domains/viewer/actions.d.ts.map +1 -0
  112. package/dist/domains/viewer/actions.test.d.ts +2 -0
  113. package/dist/domains/viewer/actions.test.d.ts.map +1 -0
  114. package/dist/domains/viewer/index.d.ts +10 -0
  115. package/dist/domains/viewer/index.d.ts.map +1 -0
  116. package/dist/domains/viewer/persistence.d.ts +122 -0
  117. package/dist/domains/viewer/persistence.d.ts.map +1 -0
  118. package/dist/domains/viewer/persistence.test.d.ts +2 -0
  119. package/dist/domains/viewer/persistence.test.d.ts.map +1 -0
  120. package/dist/domains/viewer/types.d.ts +42 -0
  121. package/dist/domains/viewer/types.d.ts.map +1 -0
  122. package/dist/i18n/index.d.ts +77 -0
  123. package/dist/i18n/index.d.ts.map +1 -0
  124. package/dist/i18n/locales/en.d.ts +3 -0
  125. package/dist/i18n/locales/en.d.ts.map +1 -0
  126. package/dist/i18n/locales/zh-CN.d.ts +3 -0
  127. package/dist/i18n/locales/zh-CN.d.ts.map +1 -0
  128. package/dist/i18n/types.d.ts +231 -0
  129. package/dist/i18n/types.d.ts.map +1 -0
  130. package/dist/icons/icon-registry.d.ts +69 -0
  131. package/dist/icons/icon-registry.d.ts.map +1 -0
  132. package/dist/icons/toolbar-icons.d.ts +38 -0
  133. package/dist/icons/toolbar-icons.d.ts.map +1 -0
  134. package/dist/index.d.ts +14 -0
  135. package/dist/index.d.ts.map +1 -0
  136. package/dist/index.es.js +1 -0
  137. package/dist/layers/canvas-layer.d.ts +44 -0
  138. package/dist/layers/canvas-layer.d.ts.map +1 -0
  139. package/dist/layers/canvas-layer.test.d.ts +2 -0
  140. package/dist/layers/canvas-layer.test.d.ts.map +1 -0
  141. package/dist/layers/canvas-utils.d.ts +80 -0
  142. package/dist/layers/canvas-utils.d.ts.map +1 -0
  143. package/dist/layers/template-layer.d.ts +41 -0
  144. package/dist/layers/template-layer.d.ts.map +1 -0
  145. package/dist/panels/annotation-comments-panel.d.ts +80 -0
  146. package/dist/panels/annotation-comments-panel.d.ts.map +1 -0
  147. package/dist/panels/annotation-settings-panel.d.ts +60 -0
  148. package/dist/panels/annotation-settings-panel.d.ts.map +1 -0
  149. package/dist/panels/annotation-summary-panel.d.ts +127 -0
  150. package/dist/panels/annotation-summary-panel.d.ts.map +1 -0
  151. package/dist/panels/annotation-summary-panel.test.d.ts +2 -0
  152. package/dist/panels/annotation-summary-panel.test.d.ts.map +1 -0
  153. package/dist/panels/comment-input.d.ts +34 -0
  154. package/dist/panels/comment-input.d.ts.map +1 -0
  155. package/dist/panels/comment-input.test.d.ts +2 -0
  156. package/dist/panels/comment-input.test.d.ts.map +1 -0
  157. package/dist/panels/container-panel.d.ts +136 -0
  158. package/dist/panels/container-panel.d.ts.map +1 -0
  159. package/dist/panels/content-panel.d.ts +95 -0
  160. package/dist/panels/content-panel.d.ts.map +1 -0
  161. package/dist/panels/document-properties-panel.d.ts +54 -0
  162. package/dist/panels/document-properties-panel.d.ts.map +1 -0
  163. package/dist/panels/index.d.ts +26 -0
  164. package/dist/panels/index.d.ts.map +1 -0
  165. package/dist/panels/outline-panel.d.ts +32 -0
  166. package/dist/panels/outline-panel.d.ts.map +1 -0
  167. package/dist/panels/panel-factory.d.ts +37 -0
  168. package/dist/panels/panel-factory.d.ts.map +1 -0
  169. package/dist/panels/panel-integration-example.d.ts +49 -0
  170. package/dist/panels/panel-integration-example.d.ts.map +1 -0
  171. package/dist/panels/panel-manager.d.ts +98 -0
  172. package/dist/panels/panel-manager.d.ts.map +1 -0
  173. package/dist/panels/template-field-panel.d.ts +27 -0
  174. package/dist/panels/template-field-panel.d.ts.map +1 -0
  175. package/dist/panels/template-property-panel.d.ts +30 -0
  176. package/dist/panels/template-property-panel.d.ts.map +1 -0
  177. package/dist/panels/template-ui-helpers.d.ts +32 -0
  178. package/dist/panels/template-ui-helpers.d.ts.map +1 -0
  179. package/dist/panels/thumbnail-panel.d.ts +49 -0
  180. package/dist/panels/thumbnail-panel.d.ts.map +1 -0
  181. package/dist/pdfjs.d.ts +15 -0
  182. package/dist/pdfjs.d.ts.map +1 -0
  183. package/dist/plugins/examples/custom-tool-plugin.d.ts +12 -0
  184. package/dist/plugins/examples/custom-tool-plugin.d.ts.map +1 -0
  185. package/dist/plugins/index.d.ts +9 -0
  186. package/dist/plugins/index.d.ts.map +1 -0
  187. package/dist/plugins/plugin-manager.d.ts +108 -0
  188. package/dist/plugins/plugin-manager.d.ts.map +1 -0
  189. package/dist/plugins/plugin-manager.test.d.ts +5 -0
  190. package/dist/plugins/plugin-manager.test.d.ts.map +1 -0
  191. package/dist/plugins/types.d.ts +167 -0
  192. package/dist/plugins/types.d.ts.map +1 -0
  193. package/dist/render/page-renderer.d.ts +16 -0
  194. package/dist/render/page-renderer.d.ts.map +1 -0
  195. package/dist/render/scale.d.ts +3 -0
  196. package/dist/render/scale.d.ts.map +1 -0
  197. package/dist/render/text-layer.d.ts +4 -0
  198. package/dist/render/text-layer.d.ts.map +1 -0
  199. package/dist/render/thumb-renderer.d.ts +3 -0
  200. package/dist/render/thumb-renderer.d.ts.map +1 -0
  201. package/dist/toolbar/button-registry.d.ts +56 -0
  202. package/dist/toolbar/button-registry.d.ts.map +1 -0
  203. package/dist/toolbar/toolbar-helpers.d.ts +168 -0
  204. package/dist/toolbar/toolbar-helpers.d.ts.map +1 -0
  205. package/dist/toolbar/toolbar-icons.d.ts +3 -0
  206. package/dist/toolbar/toolbar-icons.d.ts.map +1 -0
  207. package/dist/toolbar/toolbar.d.ts +116 -0
  208. package/dist/toolbar/toolbar.d.ts.map +1 -0
  209. package/dist/ui/color-picker.d.ts +72 -0
  210. package/dist/ui/color-picker.d.ts.map +1 -0
  211. package/dist/ui/slider.d.ts +25 -0
  212. package/dist/ui/slider.d.ts.map +1 -0
  213. package/dist/utils/annotation-utils.d.ts +13 -0
  214. package/dist/utils/annotation-utils.d.ts.map +1 -0
  215. package/dist/utils/color-utils.d.ts +42 -0
  216. package/dist/utils/color-utils.d.ts.map +1 -0
  217. package/dist/utils/confirm-dialog.d.ts +10 -0
  218. package/dist/utils/confirm-dialog.d.ts.map +1 -0
  219. package/dist/utils/deep-equal.d.ts +2 -0
  220. package/dist/utils/deep-equal.d.ts.map +1 -0
  221. package/dist/utils/deep-equal.test.d.ts +2 -0
  222. package/dist/utils/deep-equal.test.d.ts.map +1 -0
  223. package/dist/utils/document-utils.d.ts +63 -0
  224. package/dist/utils/document-utils.d.ts.map +1 -0
  225. package/dist/utils/id-generator.d.ts +41 -0
  226. package/dist/utils/id-generator.d.ts.map +1 -0
  227. package/dist/utils/image-preview.d.ts +7 -0
  228. package/dist/utils/image-preview.d.ts.map +1 -0
  229. package/dist/utils/timestamp.d.ts +3 -0
  230. package/dist/utils/timestamp.d.ts.map +1 -0
  231. package/dist/viewer/collaboration-runtime.d.ts +29 -0
  232. package/dist/viewer/collaboration-runtime.d.ts.map +1 -0
  233. package/dist/viewer/config.d.ts +481 -0
  234. package/dist/viewer/config.d.ts.map +1 -0
  235. package/dist/viewer/document-load-pipeline.d.ts +43 -0
  236. package/dist/viewer/document-load-pipeline.d.ts.map +1 -0
  237. package/dist/viewer/document-load-pipeline.test.d.ts +2 -0
  238. package/dist/viewer/document-load-pipeline.test.d.ts.map +1 -0
  239. package/dist/viewer/element.d.ts +174 -0
  240. package/dist/viewer/element.d.ts.map +1 -0
  241. package/dist/viewer/element.test.d.ts +2 -0
  242. package/dist/viewer/element.test.d.ts.map +1 -0
  243. package/dist/viewer/events.d.ts +212 -0
  244. package/dist/viewer/events.d.ts.map +1 -0
  245. package/dist/viewer/export-orchestrator.d.ts +9 -0
  246. package/dist/viewer/export-orchestrator.d.ts.map +1 -0
  247. package/dist/viewer/headless.d.ts +108 -0
  248. package/dist/viewer/headless.d.ts.map +1 -0
  249. package/dist/viewer/internal-event-bindings.d.ts +26 -0
  250. package/dist/viewer/internal-event-bindings.d.ts.map +1 -0
  251. package/dist/viewer/internal-event-bindings.test.d.ts +2 -0
  252. package/dist/viewer/internal-event-bindings.test.d.ts.map +1 -0
  253. package/dist/viewer/modal.d.ts +22 -0
  254. package/dist/viewer/modal.d.ts.map +1 -0
  255. package/dist/viewer/page-indicator.d.ts +56 -0
  256. package/dist/viewer/page-indicator.d.ts.map +1 -0
  257. package/dist/viewer/pdfjs-resources.d.ts +12 -0
  258. package/dist/viewer/pdfjs-resources.d.ts.map +1 -0
  259. package/dist/viewer/server-writeback.d.ts +23 -0
  260. package/dist/viewer/server-writeback.d.ts.map +1 -0
  261. package/dist/viewer/server-writeback.test.d.ts +2 -0
  262. package/dist/viewer/server-writeback.test.d.ts.map +1 -0
  263. package/dist/viewer/ui-handler-helpers.d.ts +19 -0
  264. package/dist/viewer/ui-handler-helpers.d.ts.map +1 -0
  265. package/dist/viewer/ui-handler-helpers.test.d.ts +2 -0
  266. package/dist/viewer/ui-handler-helpers.test.d.ts.map +1 -0
  267. package/dist/viewer/viewer-header.d.ts +67 -0
  268. package/dist/viewer/viewer-header.d.ts.map +1 -0
  269. package/dist/virtual/page-position-cache.d.ts +24 -0
  270. package/dist/virtual/page-position-cache.d.ts.map +1 -0
  271. package/dist/virtual/render-pool.d.ts +23 -0
  272. package/dist/virtual/render-pool.d.ts.map +1 -0
  273. package/dist/virtual/render-pool.test.d.ts +2 -0
  274. package/dist/virtual/render-pool.test.d.ts.map +1 -0
  275. package/dist/virtual/types.d.ts +16 -0
  276. package/dist/virtual/types.d.ts.map +1 -0
  277. package/dist/virtual/virtual-page-manager.d.ts +54 -0
  278. package/dist/virtual/virtual-page-manager.d.ts.map +1 -0
  279. package/dist/watermark/watermark-layer.d.ts +58 -0
  280. package/dist/watermark/watermark-layer.d.ts.map +1 -0
  281. package/dist/watermark/watermark-settings.d.ts +79 -0
  282. package/dist/watermark/watermark-settings.d.ts.map +1 -0
  283. package/dist/watermark/watermark-ui-helpers.d.ts +78 -0
  284. package/dist/watermark/watermark-ui-helpers.d.ts.map +1 -0
  285. package/package.json +29 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-selector.d.ts","sourceRoot":"","sources":["../../../src/annotations/ui/tool-selector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;CACjD;AAED,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,GAAG,oBAAoB,CAwCpG;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAM/G"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Popover Manager
3
+ * Handles global popover rendering and positioning
4
+ */
5
+ export type PopoverPosition = "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end" | "right" | "right-start" | "right-end";
6
+ export interface PopoverOptions {
7
+ position?: PopoverPosition;
8
+ gap?: number;
9
+ }
10
+ export declare class PopoverManager {
11
+ private static instance;
12
+ private containerEl;
13
+ private activeTarget;
14
+ private clickOutsideListener;
15
+ private resizeListener;
16
+ private constructor();
17
+ static getInstance(): PopoverManager;
18
+ private createContainer;
19
+ show(target: HTMLElement, content: HTMLElement, options?: PopoverOptions): void;
20
+ hide(): void;
21
+ private updatePosition;
22
+ private setupListeners;
23
+ private cleanupListeners;
24
+ }
25
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../../src/components/popover.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,KAAK,GAAG,WAAW,GAAG,SAAS,GAC/B,QAAQ,GAAG,cAAc,GAAG,YAAY,GACxC,MAAM,GAAG,YAAY,GAAG,UAAU,GAClC,OAAO,GAAG,aAAa,GAAG,WAAW,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,oBAAoB,CAA0C;IACtE,OAAO,CAAC,cAAc,CAA6B;IAEnD,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC,OAAO,CAAC,eAAe;IAoBvB,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,cAAmB,GAAG,IAAI;IA2BnF,IAAI,IAAI,IAAI;IAYZ,OAAO,CAAC,cAAc;IAqEtB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,gBAAgB;CAWzB"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Tooltip Manager
3
+ * Handles global tooltip rendering and positioning
4
+ */
5
+ export declare class TooltipManager {
6
+ private static instance;
7
+ private tooltipEl;
8
+ private contentEl;
9
+ private activeTarget;
10
+ private showTimeout;
11
+ private readonly SHOW_DELAY;
12
+ private constructor();
13
+ static getInstance(): TooltipManager;
14
+ /**
15
+ * Create the global tooltip element attached to document.body
16
+ */
17
+ private createTooltipElement;
18
+ /**
19
+ * Show the tooltip for a specific target element
20
+ */
21
+ show(target: HTMLElement, text: string): void;
22
+ /**
23
+ * Hide the tooltip
24
+ */
25
+ hide(): void;
26
+ private render;
27
+ }
28
+ //# sourceMappingURL=tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/components/tooltip.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAiB;IACxC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAO;IAElC,OAAO;IAIP,MAAM,CAAC,WAAW,IAAI,cAAc;IAOpC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwC5B;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAe7C;;OAEG;IACH,IAAI,IAAI,IAAI;IAkBZ,OAAO,CAAC,MAAM;CAqCf"}
@@ -0,0 +1,281 @@
1
+ import { AnnotationGeometry, ViewerController, Annotation, AnnotationComment, CommentThread, AnnotationStoreChange, CommentStoreChange, AnnotationStyle, AnnotationType, UserManager, CommentContent, DocumentMode, UserInfo } from '@jacktea/pdf-viewer-core';
2
+ import { AnnotationTool } from '../annotations/types';
3
+ import { AnnotationSettings } from '../annotations/settings';
4
+ import { CanvasLayer } from '../layers/canvas-layer';
5
+ import { AnnotationLayer } from '../annotations/annotation-layer';
6
+ import { PanelManager } from '../panels/panel-manager';
7
+ import { ViewerToolbar } from '../toolbar/toolbar';
8
+ import { PdfViewerCallbacks, AnnotationFilter, AnnotationConfig, PermissionConfig, FeatureConfig } from '../viewer/config';
9
+ /**
10
+ * Dependencies required by the AnnotationCoordinator
11
+ */
12
+ export interface AnnotationDependencies {
13
+ getController: () => ViewerController;
14
+ getAnnotationLayer: () => AnnotationLayer | undefined;
15
+ getCanvasLayer: () => CanvasLayer | undefined;
16
+ getPanelManager: () => PanelManager | undefined;
17
+ getToolbar: () => ViewerToolbar | undefined;
18
+ getDocumentStorageKey: () => string | undefined;
19
+ getHasRestoredAnnotations: () => boolean;
20
+ setHasRestoredAnnotations: (value: boolean) => void;
21
+ getAnnotationMode: () => boolean;
22
+ getAnnotationTool: () => AnnotationTool;
23
+ getPageFromUi: (page: number) => void;
24
+ dispatchEvent: (event: Event) => void;
25
+ getUserInfo: () => UserInfo | undefined;
26
+ getCallbacks: () => PdfViewerCallbacks | undefined;
27
+ getAnnotationFilter: () => AnnotationFilter | undefined;
28
+ getUserManager: () => UserManager | undefined;
29
+ getAnnotationConfig: () => AnnotationConfig | undefined;
30
+ getPermissionConfig: () => PermissionConfig | undefined;
31
+ getFeatureConfig: () => FeatureConfig | undefined;
32
+ }
33
+ /**
34
+ * Coordinator for annotation-related operations
35
+ */
36
+ export declare class AnnotationCoordinator {
37
+ private deps;
38
+ private annotationSettings;
39
+ private annotationTool;
40
+ private selectedAnnotationId;
41
+ private activeTextEditor?;
42
+ private activeTextAnnotationId?;
43
+ private selectionPopover?;
44
+ private selectionRect?;
45
+ private documentMode;
46
+ private annotationScrollRequestId;
47
+ constructor(deps: AnnotationDependencies);
48
+ private getAnnotationConfig;
49
+ private generateCommentId;
50
+ private generateCommentCode;
51
+ private createAnnotationFromConfig;
52
+ setDocumentMode(mode: DocumentMode): void;
53
+ getDocumentMode(): DocumentMode;
54
+ private isPermissionsV2Enabled;
55
+ private isGlobalPreviewModeEnabled;
56
+ private isPreviewModeActive;
57
+ private getPermissionPolicy;
58
+ private getPrincipal;
59
+ private notifyPermissionDenied;
60
+ private evaluateAction;
61
+ canCreateAnnotation(report?: boolean): boolean;
62
+ canViewAnnotation(annotation: Annotation): boolean;
63
+ canCreateCommentOnAnnotation(annotation: Annotation, report?: boolean): boolean;
64
+ canViewComment(comment: AnnotationComment): boolean;
65
+ /**
66
+ * Get current annotation settings
67
+ */
68
+ getAnnotationSettings(): AnnotationSettings;
69
+ /**
70
+ * Get current annotation tool
71
+ */
72
+ getAnnotationTool(): AnnotationTool;
73
+ /**
74
+ * Get selected annotation ID
75
+ */
76
+ getSelectedAnnotationId(): string | null;
77
+ /**
78
+ * Set the annotation tool
79
+ */
80
+ setAnnotationTool(tool: AnnotationTool): void;
81
+ /**
82
+ * Update annotation settings
83
+ */
84
+ updateAnnotationSettings(settings: AnnotationSettings, annotationDiff?: {
85
+ previous: Annotation;
86
+ next: Annotation;
87
+ }): void;
88
+ /**
89
+ * Check if annotation can be edited by current user
90
+ */
91
+ canEditAnnotation(annotation: Annotation, report?: boolean): boolean;
92
+ /**
93
+ * Check if annotation can be deleted
94
+ */
95
+ canDeleteAnnotation(annotation: Annotation, report?: boolean): boolean;
96
+ /**
97
+ * Check if comment can be edited
98
+ */
99
+ canEditComment(comment: AnnotationComment, report?: boolean): boolean;
100
+ /**
101
+ * Check if comment can be deleted
102
+ */
103
+ canDeleteComment(comment: AnnotationComment, report?: boolean): boolean;
104
+ canReplyComment(comment: AnnotationComment, report?: boolean): boolean;
105
+ canResolveThread(annotation: Annotation, thread: CommentThread | null, report?: boolean): boolean;
106
+ canReopenThread(annotation: Annotation, thread: CommentThread | null, report?: boolean): boolean;
107
+ /**
108
+ * Get annotation style for a given type
109
+ */
110
+ getAnnotationStyle(type: AnnotationType): AnnotationStyle;
111
+ /**
112
+ * Add annotation
113
+ */
114
+ addAnnotation(annotation: Annotation): void;
115
+ /**
116
+ * Update annotation
117
+ */
118
+ updateAnnotation(annotation: Annotation): void;
119
+ /**
120
+ * Remove annotation
121
+ */
122
+ removeAnnotation(annotationId: string): void;
123
+ /**
124
+ * Select annotation
125
+ */
126
+ selectAnnotation(annotationId: string | null): void;
127
+ /**
128
+ * Get all annotations
129
+ */
130
+ getAnnotations(): Annotation[];
131
+ /**
132
+ * Get ordered annotations
133
+ */
134
+ getOrderedAnnotations(): Annotation[];
135
+ /**
136
+ * Set annotations
137
+ */
138
+ setAnnotations(annotations: Annotation[]): void;
139
+ /**
140
+ * Get comment threads
141
+ */
142
+ getCommentThreads(): CommentThread[];
143
+ /**
144
+ * Set comment threads
145
+ */
146
+ setCommentThreads(threads: CommentThread[]): void;
147
+ /**
148
+ * Add comment
149
+ */
150
+ addComment(comment: AnnotationComment): void;
151
+ /**
152
+ * Update comment
153
+ */
154
+ updateComment(comment: AnnotationComment): void;
155
+ /**
156
+ * Remove comment
157
+ */
158
+ removeComment(annotationId: string, commentId: string): void;
159
+ /**
160
+ * Resolve comment thread
161
+ */
162
+ resolveCommentThread(annotationId: string): void;
163
+ /**
164
+ * Reopen comment thread
165
+ */
166
+ reopenCommentThread(annotationId: string): void;
167
+ /**
168
+ * Handle annotation add from layer
169
+ */
170
+ handleAnnotationAdd(annotation: Annotation): void;
171
+ /**
172
+ * Handle annotation update from layer
173
+ */
174
+ handleAnnotationUpdate(annotation: Annotation): void;
175
+ /**
176
+ * Handle annotation selection
177
+ */
178
+ handleAnnotationSelect(annotationId: string | null): void;
179
+ private scrollAnnotationIntoView;
180
+ private getAnnotationFocusPoint;
181
+ /**
182
+ * Handle comment add
183
+ */
184
+ handleCommentAdd(content: CommentContent, parentId?: string): void;
185
+ /**
186
+ * Focus comment input for a specific annotation.
187
+ * Mirrors AnnotationSummaryPanel comment-button behavior.
188
+ */
189
+ focusCommentInput(annotationId: string): void;
190
+ /**
191
+ * Handle comment update
192
+ */
193
+ handleCommentUpdate(commentId: string, content: CommentContent): void;
194
+ /**
195
+ * Handle comment delete
196
+ */
197
+ handleCommentDelete(commentId: string): void;
198
+ /**
199
+ * Handle thread resolve
200
+ */
201
+ handleThreadResolve(): void;
202
+ /**
203
+ * Handle thread reopen
204
+ */
205
+ handleThreadReopen(): void;
206
+ /**
207
+ * Handle remote drag event
208
+ */
209
+ handleRemoteDrag(userId: string, annotationId: string, geometry: AnnotationGeometry): void;
210
+ /**
211
+ * Handle remote drag end event
212
+ */
213
+ handleRemoteDragEnd(userId: string): void;
214
+ /**
215
+ * Handle annotation store change
216
+ */
217
+ handleAnnotationChange(change: AnnotationStoreChange): void;
218
+ /**
219
+ * Handle comment store change
220
+ */
221
+ handleCommentChange(change: CommentStoreChange): void;
222
+ /**
223
+ * Persist annotations to localStorage
224
+ */
225
+ persistAnnotations(): void;
226
+ /**
227
+ * Persist comments to localStorage
228
+ */
229
+ persistComments(): void;
230
+ /**
231
+ * Restore persisted data
232
+ */
233
+ restorePersistedData(): void;
234
+ /**
235
+ * Set selection popover element
236
+ */
237
+ setSelectionPopover(popover: HTMLDivElement): void;
238
+ /**
239
+ * Handle text selection
240
+ */
241
+ handleTextSelection(): void;
242
+ /**
243
+ * Clear selection popover
244
+ */
245
+ clearSelectionPopover(): void;
246
+ /**
247
+ * Sync text selection popover visibility
248
+ */
249
+ syncTextSelectionPopover(): void;
250
+ /**
251
+ * Apply text selection mark
252
+ */
253
+ applyTextSelectionMark(type: "highlight" | "underline" | "strike"): void;
254
+ /**
255
+ * Open text editor for text annotation
256
+ */
257
+ openTextEditor(annotation: Annotation): void;
258
+ /**
259
+ * Clear active text editor
260
+ */
261
+ clearTextEditor(): void;
262
+ /**
263
+ * Update annotation panel selection
264
+ */
265
+ private updateAnnotationPanelSelection;
266
+ /**
267
+ * Sync settings with selected annotation
268
+ */
269
+ private syncSettingsWithAnnotation;
270
+ /**
271
+ * Apply settings to selected annotation
272
+ */
273
+ private applySettingsToSelectedAnnotation;
274
+ private getAnnotationSettingsPanel;
275
+ private getAnnotationCommentsPanel;
276
+ /**
277
+ * Show selection popover
278
+ */
279
+ private showSelectionPopover;
280
+ }
281
+ //# sourceMappingURL=annotation-coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotation-coordinator.d.ts","sourceRoot":"","sources":["../../src/coordinators/annotation-coordinator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=annotation-coordinator.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotation-coordinator.test.d.ts","sourceRoot":"","sources":["../../src/coordinators/annotation-coordinator.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,93 @@
1
+ import { Annotation, AnnotationComment, CommentThread, Watermark } from '@jacktea/pdf-viewer-core';
2
+ /**
3
+ * Event dispatcher for PDF viewer custom events
4
+ */
5
+ export declare class EventDispatcher {
6
+ private target;
7
+ constructor(target: EventTarget);
8
+ /**
9
+ * Dispatch page change event
10
+ */
11
+ dispatchPageChange(page: number, pageCount: number): void;
12
+ /**
13
+ * Dispatch zoom change event
14
+ */
15
+ dispatchZoomChange(scale: number): void;
16
+ /**
17
+ * Dispatch document change event
18
+ */
19
+ dispatchDocumentChange(pageCount: number, pageOrder: number[], source?: string): void;
20
+ /**
21
+ * Dispatch annotation select event
22
+ */
23
+ dispatchAnnotationSelect(annotationId: string | null): void;
24
+ /**
25
+ * Dispatch annotation add event
26
+ */
27
+ dispatchAnnotationAdd(annotation: Annotation): void;
28
+ /**
29
+ * Dispatch annotation update event
30
+ */
31
+ dispatchAnnotationUpdate(annotation: Annotation): void;
32
+ /**
33
+ * Dispatch annotation remove event
34
+ */
35
+ dispatchAnnotationRemove(annotation: Annotation): void;
36
+ /**
37
+ * Dispatch comment add event
38
+ */
39
+ dispatchCommentAdd(comment: AnnotationComment, thread: CommentThread): void;
40
+ /**
41
+ * Dispatch comment update event
42
+ */
43
+ dispatchCommentUpdate(comment: AnnotationComment, thread: CommentThread): void;
44
+ /**
45
+ * Dispatch comment remove event
46
+ */
47
+ dispatchCommentRemove(comment: AnnotationComment, thread: CommentThread): void;
48
+ /**
49
+ * Dispatch panel toggle event
50
+ */
51
+ dispatchPanelToggle(state: "open" | "close"): void;
52
+ /**
53
+ * Dispatch outline select event
54
+ */
55
+ dispatchOutlineSelect(pageIndex: number): void;
56
+ /**
57
+ * Dispatch thumbnail select event
58
+ */
59
+ dispatchThumbnailSelect(pageIndex: number): void;
60
+ /**
61
+ * Dispatch export error event
62
+ */
63
+ dispatchExportError(message: string): void;
64
+ /**
65
+ * Dispatch watermark applied event
66
+ */
67
+ dispatchWatermarkApplied(watermark: Watermark): void;
68
+ /**
69
+ * Dispatch theme change event
70
+ */
71
+ dispatchThemeChange(theme: "light" | "dark"): void;
72
+ /**
73
+ * Dispatch viewer mode change event
74
+ */
75
+ dispatchViewerModeChange(mode: string): void;
76
+ /**
77
+ * Dispatch scale mode change event
78
+ */
79
+ dispatchScaleModeChange(mode: string): void;
80
+ /**
81
+ * Dispatch preview mode change event
82
+ */
83
+ dispatchPreviewModeChange(mode: "select" | "pan"): void;
84
+ /**
85
+ * Dispatch annotation tool change event
86
+ */
87
+ dispatchAnnotationToolChange(tool: string): void;
88
+ /**
89
+ * Dispatch undo/redo event
90
+ */
91
+ dispatchUndoRedo(action: "undo" | "redo"): void;
92
+ }
93
+ //# sourceMappingURL=event-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-dispatcher.d.ts","sourceRoot":"","sources":["../../src/coordinators/event-dispatcher.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;GAEG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAEvC;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAQzD;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMvC;;OAEG;IACH,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAQrF;;OAEG;IACH,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAM3D;;OAEG;IACH,qBAAqB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAMnD;;OAEG;IACH,wBAAwB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAMtD;;OAEG;IACH,wBAAwB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAMtD;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAQ3E;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAQ9E;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAQ9E;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;IAMlD;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAM9C;;OAEG;IACH,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMhD;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM1C;;OAEG;IACH,wBAAwB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAMpD;;OAEG;IACH,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAMlD;;OAEG;IACH,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM5C;;OAEG;IACH,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAM3C;;OAEG;IACH,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,KAAK,GAAG,IAAI;IAMvD;;OAEG;IACH,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMhD;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAKhD"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Coordinators - Sub-coordinator pattern for PdfViewerElement
3
+ *
4
+ * Coordinators manage specific aspects of the PDF viewer:
5
+ * - AnnotationCoordinator: Annotation CRUD, selection, editing, persistence
6
+ * - PanelCoordinator: Left/right panel toggle, resize, state
7
+ * - ModeCoordinator: Viewer mode switching, scale mode, preview mode
8
+ * - UiInitializer: UI component creation and initialization
9
+ * - EventDispatcher: Centralized custom event dispatching
10
+ */
11
+ export { AnnotationCoordinator } from './annotation-coordinator';
12
+ export type { AnnotationDependencies, } from './annotation-coordinator';
13
+ export { PanelCoordinatorV2 } from './panel-coordinator-v2';
14
+ export type { PanelDependenciesV2, PanelStateV2, } from './panel-coordinator-v2';
15
+ export { ModeCoordinator } from './mode-coordinator';
16
+ export type { ModeDependencies, } from './mode-coordinator';
17
+ export { UiInitializer } from './ui-initializer';
18
+ export type { UiComponents, UiHandlers, UiInitialState, } from './ui-initializer';
19
+ export { EventDispatcher } from './event-dispatcher';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/coordinators/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,YAAY,EACV,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EACV,mBAAmB,EACnB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EACV,YAAY,EACZ,UAAU,EACV,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { CanvasLayer } from '../layers/canvas-layer';
2
+ import { AnnotationLayer } from '../annotations/annotation-layer';
3
+ import { ViewerToolbar } from '../toolbar/toolbar';
4
+ import { ViewerHeader } from '../viewer/viewer-header';
5
+ import { PanelCoordinatorV2 } from './panel-coordinator-v2';
6
+ import { AnnotationCoordinator } from './annotation-coordinator';
7
+ import { ScaleMode, ViewerController } from '@jacktea/pdf-viewer-core';
8
+ import { ViewerMode, ThemeMode, LayoutModeConfig, LayoutMode } from '../viewer/config';
9
+ import { TemplateLayer } from '../layers/template-layer';
10
+ export interface ModeDependencies {
11
+ getController: () => ViewerController;
12
+ getPanelCoordinator: () => PanelCoordinatorV2;
13
+ getAnnotationCoordinator: () => AnnotationCoordinator;
14
+ getCanvasLayer: () => CanvasLayer | undefined;
15
+ getAnnotationLayer: () => AnnotationLayer | undefined;
16
+ getToolbar: () => ViewerToolbar | undefined;
17
+ getHeader: () => ViewerHeader | undefined;
18
+ getViewerHost: () => HTMLDivElement | undefined;
19
+ getTemplateLayer: () => TemplateLayer | undefined;
20
+ dispatchEvent: (event: Event) => void;
21
+ }
22
+ export declare class ModeCoordinator {
23
+ private deps;
24
+ private viewerMode;
25
+ private theme;
26
+ private hasAppliedInitialScale;
27
+ private previewMode;
28
+ private annotationMode;
29
+ private deleteMode;
30
+ private sortMode;
31
+ private layoutMode;
32
+ private layoutModeConfig?;
33
+ private readonly stateSync;
34
+ constructor(deps: ModeDependencies);
35
+ getViewerMode(): ViewerMode;
36
+ getTheme(): ThemeMode;
37
+ getScaleMode(): ScaleMode;
38
+ getPreviewMode(): "select" | "pan";
39
+ getAnnotationMode(): boolean;
40
+ getDeleteMode(): boolean;
41
+ getSortMode(): boolean;
42
+ getLayoutMode(): LayoutMode;
43
+ /**
44
+ * Set layout mode configuration
45
+ * This enables the configuration-driven layout system
46
+ */
47
+ setLayoutModeConfig(config: LayoutModeConfig): void;
48
+ /**
49
+ * Apply configuration for current viewer mode
50
+ */
51
+ private applyCurrentModeConfig;
52
+ setViewerMode(mode: ViewerMode): void;
53
+ /**
54
+ * Get mode configuration for the given mode
55
+ * Uses user config if available, otherwise falls back to default
56
+ */
57
+ private getModeConfigForCurrentMode;
58
+ toggleTheme(): void;
59
+ setTheme(theme: ThemeMode): void;
60
+ applyTheme(theme: ThemeMode, element: HTMLElement): void;
61
+ setScaleMode(mode: ScaleMode): Promise<void>;
62
+ applyScaleMode(): Promise<void>;
63
+ cycleScaleMode(): Promise<void>;
64
+ setPreviewMode(mode: "select" | "pan"): void;
65
+ setAnnotationMode(enabled: boolean): void;
66
+ setEditControls(enabled: boolean): void;
67
+ setAnnotationsVisible(visible: boolean, force?: boolean): void;
68
+ handleInitialScale(): boolean;
69
+ setInitialScaleApplied(): void;
70
+ resetInitialScaleFlag(): void;
71
+ onDocumentChange(): void;
72
+ resetForDocumentLoad(viewerMode: ViewerMode): void;
73
+ }
74
+ //# sourceMappingURL=mode-coordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mode-coordinator.d.ts","sourceRoot":"","sources":["../../src/coordinators/mode-coordinator.ts"],"names":[],"mappings":"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"}