@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.
- package/README.md +45 -0
- package/dist/annotations/annotation-layer.d.ts +40 -0
- package/dist/annotations/annotation-layer.d.ts.map +1 -0
- package/dist/annotations/annotation-layer.test.d.ts +2 -0
- package/dist/annotations/annotation-layer.test.d.ts.map +1 -0
- package/dist/annotations/interaction/annotation-interaction-controller.d.ts +59 -0
- package/dist/annotations/interaction/annotation-interaction-controller.d.ts.map +1 -0
- package/dist/annotations/interaction/tool-utils.d.ts +11 -0
- package/dist/annotations/interaction/tool-utils.d.ts.map +1 -0
- package/dist/annotations/rendering/annotation-svg-renderer.d.ts +28 -0
- package/dist/annotations/rendering/annotation-svg-renderer.d.ts.map +1 -0
- package/dist/annotations/rendering/annotation-svg-renderer.test.d.ts +2 -0
- package/dist/annotations/rendering/annotation-svg-renderer.test.d.ts.map +1 -0
- package/dist/annotations/rendering/geometry-utils.d.ts +6 -0
- package/dist/annotations/rendering/geometry-utils.d.ts.map +1 -0
- package/dist/annotations/rendering/hit-testing.d.ts +10 -0
- package/dist/annotations/rendering/hit-testing.d.ts.map +1 -0
- package/dist/annotations/rendering/index.d.ts +3 -0
- package/dist/annotations/rendering/index.d.ts.map +1 -0
- package/dist/annotations/settings.d.ts +46 -0
- package/dist/annotations/settings.d.ts.map +1 -0
- package/dist/annotations/types.d.ts +3 -0
- package/dist/annotations/types.d.ts.map +1 -0
- package/dist/annotations/ui/annotation-metadata.d.ts +12 -0
- package/dist/annotations/ui/annotation-metadata.d.ts.map +1 -0
- package/dist/annotations/ui/appearance-editor.d.ts +16 -0
- package/dist/annotations/ui/appearance-editor.d.ts.map +1 -0
- package/dist/annotations/ui/arrow-style-editor.d.ts +17 -0
- package/dist/annotations/ui/arrow-style-editor.d.ts.map +1 -0
- package/dist/annotations/ui/header-card.d.ts +4 -0
- package/dist/annotations/ui/header-card.d.ts.map +1 -0
- package/dist/annotations/ui/index.d.ts +8 -0
- package/dist/annotations/ui/index.d.ts.map +1 -0
- package/dist/annotations/ui/popup-toolbar.d.ts +53 -0
- package/dist/annotations/ui/popup-toolbar.d.ts.map +1 -0
- package/dist/annotations/ui/popup-toolbar.test.d.ts +2 -0
- package/dist/annotations/ui/popup-toolbar.test.d.ts.map +1 -0
- package/dist/annotations/ui/stroke-style-editor.d.ts +16 -0
- package/dist/annotations/ui/stroke-style-editor.d.ts.map +1 -0
- package/dist/annotations/ui/style-pickers.d.ts +82 -0
- package/dist/annotations/ui/style-pickers.d.ts.map +1 -0
- package/dist/annotations/ui/text-style-editor.d.ts +22 -0
- package/dist/annotations/ui/text-style-editor.d.ts.map +1 -0
- package/dist/annotations/ui/tool-selector.d.ts +8 -0
- package/dist/annotations/ui/tool-selector.d.ts.map +1 -0
- package/dist/components/popover.d.ts +25 -0
- package/dist/components/popover.d.ts.map +1 -0
- package/dist/components/tooltip.d.ts +28 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/coordinators/annotation-coordinator.d.ts +281 -0
- package/dist/coordinators/annotation-coordinator.d.ts.map +1 -0
- package/dist/coordinators/annotation-coordinator.test.d.ts +2 -0
- package/dist/coordinators/annotation-coordinator.test.d.ts.map +1 -0
- package/dist/coordinators/event-dispatcher.d.ts +93 -0
- package/dist/coordinators/event-dispatcher.d.ts.map +1 -0
- package/dist/coordinators/index.d.ts +20 -0
- package/dist/coordinators/index.d.ts.map +1 -0
- package/dist/coordinators/mode-coordinator.d.ts +74 -0
- package/dist/coordinators/mode-coordinator.d.ts.map +1 -0
- package/dist/coordinators/panel-coordinator-v2.d.ts +138 -0
- package/dist/coordinators/panel-coordinator-v2.d.ts.map +1 -0
- package/dist/coordinators/state-sync-manager.d.ts +37 -0
- package/dist/coordinators/state-sync-manager.d.ts.map +1 -0
- package/dist/coordinators/state-tracker.d.ts +48 -0
- package/dist/coordinators/state-tracker.d.ts.map +1 -0
- package/dist/coordinators/state-types.d.ts +56 -0
- package/dist/coordinators/state-types.d.ts.map +1 -0
- package/dist/coordinators/ui-initializer.d.ts +130 -0
- package/dist/coordinators/ui-initializer.d.ts.map +1 -0
- package/dist/di/container.d.ts +77 -0
- package/dist/di/container.d.ts.map +1 -0
- package/dist/di/container.test.d.ts +5 -0
- package/dist/di/container.test.d.ts.map +1 -0
- package/dist/di/index.d.ts +11 -0
- package/dist/di/index.d.ts.map +1 -0
- package/dist/di/tokens.d.ts +88 -0
- package/dist/di/tokens.d.ts.map +1 -0
- package/dist/domains/annotation/index.d.ts +9 -0
- package/dist/domains/annotation/index.d.ts.map +1 -0
- package/dist/domains/annotation/styles.d.ts +23 -0
- package/dist/domains/annotation/styles.d.ts.map +1 -0
- package/dist/domains/annotation/sync.d.ts +68 -0
- package/dist/domains/annotation/sync.d.ts.map +1 -0
- package/dist/domains/annotation/sync.test.d.ts +2 -0
- package/dist/domains/annotation/sync.test.d.ts.map +1 -0
- package/dist/domains/export/index.d.ts +10 -0
- package/dist/domains/export/index.d.ts.map +1 -0
- package/dist/domains/export/metadata.d.ts +31 -0
- package/dist/domains/export/metadata.d.ts.map +1 -0
- package/dist/domains/export/metadata.test.d.ts +2 -0
- package/dist/domains/export/metadata.test.d.ts.map +1 -0
- package/dist/domains/export/pdf-export.d.ts +70 -0
- package/dist/domains/export/pdf-export.d.ts.map +1 -0
- package/dist/domains/export/pdf-export.test.d.ts +2 -0
- package/dist/domains/export/pdf-export.test.d.ts.map +1 -0
- package/dist/domains/export/watermark.d.ts +24 -0
- package/dist/domains/export/watermark.d.ts.map +1 -0
- package/dist/domains/export/watermark.test.d.ts +2 -0
- package/dist/domains/export/watermark.test.d.ts.map +1 -0
- package/dist/domains/index.d.ts +18 -0
- package/dist/domains/index.d.ts.map +1 -0
- package/dist/domains/ui/dialogs.d.ts +49 -0
- package/dist/domains/ui/dialogs.d.ts.map +1 -0
- package/dist/domains/ui/dialogs.test.d.ts +2 -0
- package/dist/domains/ui/dialogs.test.d.ts.map +1 -0
- package/dist/domains/ui/editors.d.ts +120 -0
- package/dist/domains/ui/editors.d.ts.map +1 -0
- package/dist/domains/ui/index.d.ts +9 -0
- package/dist/domains/ui/index.d.ts.map +1 -0
- package/dist/domains/viewer/actions.d.ts +90 -0
- package/dist/domains/viewer/actions.d.ts.map +1 -0
- package/dist/domains/viewer/actions.test.d.ts +2 -0
- package/dist/domains/viewer/actions.test.d.ts.map +1 -0
- package/dist/domains/viewer/index.d.ts +10 -0
- package/dist/domains/viewer/index.d.ts.map +1 -0
- package/dist/domains/viewer/persistence.d.ts +122 -0
- package/dist/domains/viewer/persistence.d.ts.map +1 -0
- package/dist/domains/viewer/persistence.test.d.ts +2 -0
- package/dist/domains/viewer/persistence.test.d.ts.map +1 -0
- package/dist/domains/viewer/types.d.ts +42 -0
- package/dist/domains/viewer/types.d.ts.map +1 -0
- package/dist/i18n/index.d.ts +77 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/locales/en.d.ts +3 -0
- package/dist/i18n/locales/en.d.ts.map +1 -0
- package/dist/i18n/locales/zh-CN.d.ts +3 -0
- package/dist/i18n/locales/zh-CN.d.ts.map +1 -0
- package/dist/i18n/types.d.ts +231 -0
- package/dist/i18n/types.d.ts.map +1 -0
- package/dist/icons/icon-registry.d.ts +69 -0
- package/dist/icons/icon-registry.d.ts.map +1 -0
- package/dist/icons/toolbar-icons.d.ts +38 -0
- package/dist/icons/toolbar-icons.d.ts.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +1 -0
- package/dist/layers/canvas-layer.d.ts +44 -0
- package/dist/layers/canvas-layer.d.ts.map +1 -0
- package/dist/layers/canvas-layer.test.d.ts +2 -0
- package/dist/layers/canvas-layer.test.d.ts.map +1 -0
- package/dist/layers/canvas-utils.d.ts +80 -0
- package/dist/layers/canvas-utils.d.ts.map +1 -0
- package/dist/layers/template-layer.d.ts +41 -0
- package/dist/layers/template-layer.d.ts.map +1 -0
- package/dist/panels/annotation-comments-panel.d.ts +80 -0
- package/dist/panels/annotation-comments-panel.d.ts.map +1 -0
- package/dist/panels/annotation-settings-panel.d.ts +60 -0
- package/dist/panels/annotation-settings-panel.d.ts.map +1 -0
- package/dist/panels/annotation-summary-panel.d.ts +127 -0
- package/dist/panels/annotation-summary-panel.d.ts.map +1 -0
- package/dist/panels/annotation-summary-panel.test.d.ts +2 -0
- package/dist/panels/annotation-summary-panel.test.d.ts.map +1 -0
- package/dist/panels/comment-input.d.ts +34 -0
- package/dist/panels/comment-input.d.ts.map +1 -0
- package/dist/panels/comment-input.test.d.ts +2 -0
- package/dist/panels/comment-input.test.d.ts.map +1 -0
- package/dist/panels/container-panel.d.ts +136 -0
- package/dist/panels/container-panel.d.ts.map +1 -0
- package/dist/panels/content-panel.d.ts +95 -0
- package/dist/panels/content-panel.d.ts.map +1 -0
- package/dist/panels/document-properties-panel.d.ts +54 -0
- package/dist/panels/document-properties-panel.d.ts.map +1 -0
- package/dist/panels/index.d.ts +26 -0
- package/dist/panels/index.d.ts.map +1 -0
- package/dist/panels/outline-panel.d.ts +32 -0
- package/dist/panels/outline-panel.d.ts.map +1 -0
- package/dist/panels/panel-factory.d.ts +37 -0
- package/dist/panels/panel-factory.d.ts.map +1 -0
- package/dist/panels/panel-integration-example.d.ts +49 -0
- package/dist/panels/panel-integration-example.d.ts.map +1 -0
- package/dist/panels/panel-manager.d.ts +98 -0
- package/dist/panels/panel-manager.d.ts.map +1 -0
- package/dist/panels/template-field-panel.d.ts +27 -0
- package/dist/panels/template-field-panel.d.ts.map +1 -0
- package/dist/panels/template-property-panel.d.ts +30 -0
- package/dist/panels/template-property-panel.d.ts.map +1 -0
- package/dist/panels/template-ui-helpers.d.ts +32 -0
- package/dist/panels/template-ui-helpers.d.ts.map +1 -0
- package/dist/panels/thumbnail-panel.d.ts +49 -0
- package/dist/panels/thumbnail-panel.d.ts.map +1 -0
- package/dist/pdfjs.d.ts +15 -0
- package/dist/pdfjs.d.ts.map +1 -0
- package/dist/plugins/examples/custom-tool-plugin.d.ts +12 -0
- package/dist/plugins/examples/custom-tool-plugin.d.ts.map +1 -0
- package/dist/plugins/index.d.ts +9 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/plugin-manager.d.ts +108 -0
- package/dist/plugins/plugin-manager.d.ts.map +1 -0
- package/dist/plugins/plugin-manager.test.d.ts +5 -0
- package/dist/plugins/plugin-manager.test.d.ts.map +1 -0
- package/dist/plugins/types.d.ts +167 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/render/page-renderer.d.ts +16 -0
- package/dist/render/page-renderer.d.ts.map +1 -0
- package/dist/render/scale.d.ts +3 -0
- package/dist/render/scale.d.ts.map +1 -0
- package/dist/render/text-layer.d.ts +4 -0
- package/dist/render/text-layer.d.ts.map +1 -0
- package/dist/render/thumb-renderer.d.ts +3 -0
- package/dist/render/thumb-renderer.d.ts.map +1 -0
- package/dist/toolbar/button-registry.d.ts +56 -0
- package/dist/toolbar/button-registry.d.ts.map +1 -0
- package/dist/toolbar/toolbar-helpers.d.ts +168 -0
- package/dist/toolbar/toolbar-helpers.d.ts.map +1 -0
- package/dist/toolbar/toolbar-icons.d.ts +3 -0
- package/dist/toolbar/toolbar-icons.d.ts.map +1 -0
- package/dist/toolbar/toolbar.d.ts +116 -0
- package/dist/toolbar/toolbar.d.ts.map +1 -0
- package/dist/ui/color-picker.d.ts +72 -0
- package/dist/ui/color-picker.d.ts.map +1 -0
- package/dist/ui/slider.d.ts +25 -0
- package/dist/ui/slider.d.ts.map +1 -0
- package/dist/utils/annotation-utils.d.ts +13 -0
- package/dist/utils/annotation-utils.d.ts.map +1 -0
- package/dist/utils/color-utils.d.ts +42 -0
- package/dist/utils/color-utils.d.ts.map +1 -0
- package/dist/utils/confirm-dialog.d.ts +10 -0
- package/dist/utils/confirm-dialog.d.ts.map +1 -0
- package/dist/utils/deep-equal.d.ts +2 -0
- package/dist/utils/deep-equal.d.ts.map +1 -0
- package/dist/utils/deep-equal.test.d.ts +2 -0
- package/dist/utils/deep-equal.test.d.ts.map +1 -0
- package/dist/utils/document-utils.d.ts +63 -0
- package/dist/utils/document-utils.d.ts.map +1 -0
- package/dist/utils/id-generator.d.ts +41 -0
- package/dist/utils/id-generator.d.ts.map +1 -0
- package/dist/utils/image-preview.d.ts +7 -0
- package/dist/utils/image-preview.d.ts.map +1 -0
- package/dist/utils/timestamp.d.ts +3 -0
- package/dist/utils/timestamp.d.ts.map +1 -0
- package/dist/viewer/collaboration-runtime.d.ts +29 -0
- package/dist/viewer/collaboration-runtime.d.ts.map +1 -0
- package/dist/viewer/config.d.ts +481 -0
- package/dist/viewer/config.d.ts.map +1 -0
- package/dist/viewer/document-load-pipeline.d.ts +43 -0
- package/dist/viewer/document-load-pipeline.d.ts.map +1 -0
- package/dist/viewer/document-load-pipeline.test.d.ts +2 -0
- package/dist/viewer/document-load-pipeline.test.d.ts.map +1 -0
- package/dist/viewer/element.d.ts +174 -0
- package/dist/viewer/element.d.ts.map +1 -0
- package/dist/viewer/element.test.d.ts +2 -0
- package/dist/viewer/element.test.d.ts.map +1 -0
- package/dist/viewer/events.d.ts +212 -0
- package/dist/viewer/events.d.ts.map +1 -0
- package/dist/viewer/export-orchestrator.d.ts +9 -0
- package/dist/viewer/export-orchestrator.d.ts.map +1 -0
- package/dist/viewer/headless.d.ts +108 -0
- package/dist/viewer/headless.d.ts.map +1 -0
- package/dist/viewer/internal-event-bindings.d.ts +26 -0
- package/dist/viewer/internal-event-bindings.d.ts.map +1 -0
- package/dist/viewer/internal-event-bindings.test.d.ts +2 -0
- package/dist/viewer/internal-event-bindings.test.d.ts.map +1 -0
- package/dist/viewer/modal.d.ts +22 -0
- package/dist/viewer/modal.d.ts.map +1 -0
- package/dist/viewer/page-indicator.d.ts +56 -0
- package/dist/viewer/page-indicator.d.ts.map +1 -0
- package/dist/viewer/pdfjs-resources.d.ts +12 -0
- package/dist/viewer/pdfjs-resources.d.ts.map +1 -0
- package/dist/viewer/server-writeback.d.ts +23 -0
- package/dist/viewer/server-writeback.d.ts.map +1 -0
- package/dist/viewer/server-writeback.test.d.ts +2 -0
- package/dist/viewer/server-writeback.test.d.ts.map +1 -0
- package/dist/viewer/ui-handler-helpers.d.ts +19 -0
- package/dist/viewer/ui-handler-helpers.d.ts.map +1 -0
- package/dist/viewer/ui-handler-helpers.test.d.ts +2 -0
- package/dist/viewer/ui-handler-helpers.test.d.ts.map +1 -0
- package/dist/viewer/viewer-header.d.ts +67 -0
- package/dist/viewer/viewer-header.d.ts.map +1 -0
- package/dist/virtual/page-position-cache.d.ts +24 -0
- package/dist/virtual/page-position-cache.d.ts.map +1 -0
- package/dist/virtual/render-pool.d.ts +23 -0
- package/dist/virtual/render-pool.d.ts.map +1 -0
- package/dist/virtual/render-pool.test.d.ts +2 -0
- package/dist/virtual/render-pool.test.d.ts.map +1 -0
- package/dist/virtual/types.d.ts +16 -0
- package/dist/virtual/types.d.ts.map +1 -0
- package/dist/virtual/virtual-page-manager.d.ts +54 -0
- package/dist/virtual/virtual-page-manager.d.ts.map +1 -0
- package/dist/watermark/watermark-layer.d.ts +58 -0
- package/dist/watermark/watermark-layer.d.ts.map +1 -0
- package/dist/watermark/watermark-settings.d.ts +79 -0
- package/dist/watermark/watermark-settings.d.ts.map +1 -0
- package/dist/watermark/watermark-ui-helpers.d.ts +78 -0
- package/dist/watermark/watermark-ui-helpers.d.ts.map +1 -0
- package/package.json +29 -0
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { DocumentSource, ViewerState, ScaleMode, ViewerListener, Annotation, AnnotationComment, CommentThread, PdfData, DocumentMode } from '@jacktea/pdf-viewer-core';
|
|
2
|
+
import { LayoutModeConfig, LayoutMode, PdfViewerConfig } from './config';
|
|
3
|
+
import { ServerWritebackPayload } from './server-writeback';
|
|
4
|
+
import { DIContainer } from '../di';
|
|
5
|
+
import { PluginManager, PdfViewerPlugin, PluginOptions } from '../plugins';
|
|
6
|
+
export declare class PdfViewerElement extends HTMLElement {
|
|
7
|
+
static get observedAttributes(): string[];
|
|
8
|
+
private readonly container;
|
|
9
|
+
private controller;
|
|
10
|
+
private ui?;
|
|
11
|
+
private annotationCoordinator?;
|
|
12
|
+
private panelCoordinator?;
|
|
13
|
+
private modeCoordinator?;
|
|
14
|
+
private eventDispatcher?;
|
|
15
|
+
private pluginManager;
|
|
16
|
+
private readonly stateSync;
|
|
17
|
+
private unsubscribe?;
|
|
18
|
+
private annotationUnsubscribe?;
|
|
19
|
+
private commentUnsubscribe?;
|
|
20
|
+
private localeUnsubscribe?;
|
|
21
|
+
private keydownListener?;
|
|
22
|
+
private detachInternalEventBindings?;
|
|
23
|
+
private collaborationBindings;
|
|
24
|
+
private lastState?;
|
|
25
|
+
private documentStorageKey?;
|
|
26
|
+
private documentName?;
|
|
27
|
+
private currentWatermark;
|
|
28
|
+
private forceNextScroll;
|
|
29
|
+
private forceScrollBehavior;
|
|
30
|
+
private ignoreNextScrollSync;
|
|
31
|
+
private hasRestoredPersistedData;
|
|
32
|
+
private config;
|
|
33
|
+
constructor();
|
|
34
|
+
private getAnnotationConfig;
|
|
35
|
+
private generateCommentId;
|
|
36
|
+
private generateCommentCode;
|
|
37
|
+
private createAnnotationFromConfig;
|
|
38
|
+
/**
|
|
39
|
+
* Register all services with the DI container
|
|
40
|
+
*/
|
|
41
|
+
private registerServices;
|
|
42
|
+
private requestPdfPassword;
|
|
43
|
+
private initializeCollaboration;
|
|
44
|
+
connectedCallback(): void;
|
|
45
|
+
disconnectedCallback(): void;
|
|
46
|
+
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
|
|
47
|
+
loadDocument(source: DocumentSource | string | Blob | ArrayBuffer | Uint8Array): Promise<void>;
|
|
48
|
+
setPage(page: number): void;
|
|
49
|
+
zoomIn(): void;
|
|
50
|
+
zoomOut(): void;
|
|
51
|
+
rotate(): void;
|
|
52
|
+
toggleFullScreen(): void;
|
|
53
|
+
addAnnotation(annotation: Annotation): void;
|
|
54
|
+
updateAnnotation(annotation: Annotation): void;
|
|
55
|
+
removeAnnotation(annotationId: string): void;
|
|
56
|
+
selectAnnotation(annotationId: string | null): void;
|
|
57
|
+
getAnnotations(): Annotation[];
|
|
58
|
+
setAnnotations(annotations: Annotation[]): void;
|
|
59
|
+
get compact(): boolean;
|
|
60
|
+
set compact(value: boolean);
|
|
61
|
+
get locale(): string;
|
|
62
|
+
set locale(value: string);
|
|
63
|
+
setLocale(locale: string): void;
|
|
64
|
+
getCommentThreads(): CommentThread[];
|
|
65
|
+
setCommentThreads(threads: CommentThread[]): void;
|
|
66
|
+
addComment(comment: AnnotationComment): void;
|
|
67
|
+
updateComment(comment: AnnotationComment): void;
|
|
68
|
+
removeComment(annotationId: string, commentId: string): void;
|
|
69
|
+
resolveCommentThread(annotationId: string): void | undefined;
|
|
70
|
+
reopenCommentThread(annotationId: string): void | undefined;
|
|
71
|
+
setDocumentMode(mode: DocumentMode, options?: {
|
|
72
|
+
broadcast?: boolean;
|
|
73
|
+
}): void;
|
|
74
|
+
/**
|
|
75
|
+
* Reconcile temporary local IDs/codes with server-generated values.
|
|
76
|
+
*/
|
|
77
|
+
writeBackFromServer(payload: ServerWritebackPayload): void;
|
|
78
|
+
deletePage(pageIndex: number): void;
|
|
79
|
+
movePage(fromIndex: number, toIndex: number): void;
|
|
80
|
+
undo(): void;
|
|
81
|
+
redo(): void;
|
|
82
|
+
exportPdf(embedWatermark?: boolean): Promise<Uint8Array>;
|
|
83
|
+
/**
|
|
84
|
+
* Export all user-added data (Watermarks, Annotations, Comments, Templates) as a unified JSON object.
|
|
85
|
+
*/
|
|
86
|
+
exportData(): Promise<PdfData>;
|
|
87
|
+
/**
|
|
88
|
+
* Import data (Watermarks, Annotations, Comments, Templates) from a unified JSON object.
|
|
89
|
+
* This will replace the current state.
|
|
90
|
+
*/
|
|
91
|
+
importData(data: PdfData): Promise<void>;
|
|
92
|
+
getState(): ViewerState;
|
|
93
|
+
subscribe(listener: ViewerListener): () => void;
|
|
94
|
+
/**
|
|
95
|
+
* Get the DI container for this viewer instance
|
|
96
|
+
* Useful for testing and advanced customization
|
|
97
|
+
*/
|
|
98
|
+
getContainer(): DIContainer;
|
|
99
|
+
/**
|
|
100
|
+
* Register a plugin with the viewer
|
|
101
|
+
*/
|
|
102
|
+
registerPlugin(plugin: PdfViewerPlugin, options?: PluginOptions): void;
|
|
103
|
+
/**
|
|
104
|
+
* Unregister a plugin by name
|
|
105
|
+
*/
|
|
106
|
+
unregisterPlugin(name: string): void;
|
|
107
|
+
/**
|
|
108
|
+
* Get a registered plugin by name
|
|
109
|
+
*/
|
|
110
|
+
getPlugin(name: string): PdfViewerPlugin | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* Get all registered plugins
|
|
113
|
+
*/
|
|
114
|
+
getPlugins(): PdfViewerPlugin[];
|
|
115
|
+
/**
|
|
116
|
+
* Check if a plugin is registered
|
|
117
|
+
*/
|
|
118
|
+
hasPlugin(name: string): boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Get the plugin manager for advanced usage
|
|
121
|
+
*/
|
|
122
|
+
getPluginManager(): PluginManager;
|
|
123
|
+
get page(): number;
|
|
124
|
+
set page(value: number);
|
|
125
|
+
get scale(): number;
|
|
126
|
+
set scale(value: number);
|
|
127
|
+
get rotation(): number;
|
|
128
|
+
set rotation(value: number);
|
|
129
|
+
get src(): string | null;
|
|
130
|
+
set src(value: string | null);
|
|
131
|
+
get scaleMode(): ScaleMode;
|
|
132
|
+
set scaleMode(value: ScaleMode);
|
|
133
|
+
/**
|
|
134
|
+
* Set the layout mode configuration
|
|
135
|
+
* This enables configuration-driven layout customization
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* ```typescript
|
|
139
|
+
* viewer.setLayoutModeConfig({
|
|
140
|
+
* layout: "simple",
|
|
141
|
+
* pageIndicator: { items: ["pageNo", "sep", "pageTotal", "zoomIn", "zoomOut"] }
|
|
142
|
+
* });
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
setLayoutModeConfig(config: LayoutModeConfig): void;
|
|
146
|
+
/**
|
|
147
|
+
* Get the current layout mode
|
|
148
|
+
*/
|
|
149
|
+
getLayoutMode(): LayoutMode;
|
|
150
|
+
/**
|
|
151
|
+
* Set the viewer configuration
|
|
152
|
+
*/
|
|
153
|
+
setConfig(config: Partial<PdfViewerConfig>): void;
|
|
154
|
+
private ensureCoordinators;
|
|
155
|
+
private ensureUi;
|
|
156
|
+
private handleStateChange;
|
|
157
|
+
private navigateAnnotationSelection;
|
|
158
|
+
private updateWatermarkState;
|
|
159
|
+
private getPanelManager;
|
|
160
|
+
private getThumbnailPanels;
|
|
161
|
+
private getOutlinePanel;
|
|
162
|
+
private getDocumentPropertiesPanel;
|
|
163
|
+
private resolveVisibleIndex;
|
|
164
|
+
private syncPageIndicator;
|
|
165
|
+
private syncAttributes;
|
|
166
|
+
private setPageFromUi;
|
|
167
|
+
private commitPageIndicator;
|
|
168
|
+
private handleOpenRemote;
|
|
169
|
+
private handleExport;
|
|
170
|
+
private dispatchDocumentChange;
|
|
171
|
+
private handleTooltipMouseOver;
|
|
172
|
+
private handleTooltipMouseOut;
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=element.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../../src/viewer/element.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element.test.d.ts","sourceRoot":"","sources":["../../src/viewer/element.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import { Annotation, PdfDocumentHandle } from '@jacktea/pdf-viewer-core';
|
|
2
|
+
/**
|
|
3
|
+
* Document lifecycle events
|
|
4
|
+
*/
|
|
5
|
+
export interface DocumentLoadEvent {
|
|
6
|
+
document: PdfDocumentHandle;
|
|
7
|
+
pageCount: number;
|
|
8
|
+
documentName?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface DocumentUnloadEvent {
|
|
11
|
+
documentName?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface DocumentErrorEvent {
|
|
14
|
+
error: Error;
|
|
15
|
+
message: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Page events
|
|
19
|
+
*/
|
|
20
|
+
export interface PageChangeEvent {
|
|
21
|
+
page: number;
|
|
22
|
+
pageCount: number;
|
|
23
|
+
}
|
|
24
|
+
export interface PageRenderEvent {
|
|
25
|
+
pageIndex: number;
|
|
26
|
+
canvas: HTMLCanvasElement;
|
|
27
|
+
scale: number;
|
|
28
|
+
rotation: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Zoom events
|
|
32
|
+
*/
|
|
33
|
+
export interface ZoomChangeEvent {
|
|
34
|
+
scale: number;
|
|
35
|
+
previousScale: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Rotation events
|
|
39
|
+
*/
|
|
40
|
+
export interface RotationChangeEvent {
|
|
41
|
+
rotation: number;
|
|
42
|
+
previousRotation: number;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Mode change events
|
|
46
|
+
*/
|
|
47
|
+
export interface ModeChangeEvent {
|
|
48
|
+
mode: "preview" | "annotation" | "edit";
|
|
49
|
+
previousMode: "preview" | "annotation" | "edit";
|
|
50
|
+
}
|
|
51
|
+
export interface ThemeChangeEvent {
|
|
52
|
+
theme: "light" | "dark";
|
|
53
|
+
previousTheme: "light" | "dark";
|
|
54
|
+
isInternal?: boolean;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Panel events
|
|
58
|
+
*/
|
|
59
|
+
export interface PanelOpenEvent {
|
|
60
|
+
panelId: "left" | "right";
|
|
61
|
+
panelType?: string;
|
|
62
|
+
}
|
|
63
|
+
export interface PanelCloseEvent {
|
|
64
|
+
panelId: "left" | "right";
|
|
65
|
+
panelType?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface PanelResizeEvent {
|
|
68
|
+
panelId: "left" | "right";
|
|
69
|
+
width: number;
|
|
70
|
+
previousWidth: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Annotation events
|
|
74
|
+
*/
|
|
75
|
+
export interface AnnotationAddEvent {
|
|
76
|
+
annotation: Annotation;
|
|
77
|
+
}
|
|
78
|
+
export interface AnnotationUpdateEvent {
|
|
79
|
+
annotation: Annotation;
|
|
80
|
+
previousAnnotation: Annotation;
|
|
81
|
+
}
|
|
82
|
+
export interface AnnotationRemoveEvent {
|
|
83
|
+
annotationId: string;
|
|
84
|
+
annotation: Annotation;
|
|
85
|
+
}
|
|
86
|
+
export interface AnnotationSelectEvent {
|
|
87
|
+
annotationId: string | null;
|
|
88
|
+
annotation: Annotation | null;
|
|
89
|
+
previousAnnotationId: string | null;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Toolbar events
|
|
93
|
+
*/
|
|
94
|
+
export interface ToolbarActionEvent {
|
|
95
|
+
actionId: string;
|
|
96
|
+
actionType: string;
|
|
97
|
+
}
|
|
98
|
+
export interface ToolSelectEvent {
|
|
99
|
+
tool: string;
|
|
100
|
+
previousTool: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Export events
|
|
104
|
+
*/
|
|
105
|
+
export interface ExportStartEvent {
|
|
106
|
+
format: "pdf";
|
|
107
|
+
includeAnnotations: boolean;
|
|
108
|
+
includeWatermarks: boolean;
|
|
109
|
+
}
|
|
110
|
+
export interface ExportCompleteEvent {
|
|
111
|
+
format: "pdf";
|
|
112
|
+
data: Uint8Array;
|
|
113
|
+
size: number;
|
|
114
|
+
}
|
|
115
|
+
export interface ExportErrorEvent {
|
|
116
|
+
format: "pdf";
|
|
117
|
+
error: Error;
|
|
118
|
+
message: string;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Viewer ready event
|
|
122
|
+
*/
|
|
123
|
+
export interface ViewerReadyEvent {
|
|
124
|
+
element: HTMLElement;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Viewer destroy event
|
|
128
|
+
*/
|
|
129
|
+
export interface ViewerDestroyEvent {
|
|
130
|
+
element: HTMLElement;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Selection event for text
|
|
134
|
+
*/
|
|
135
|
+
export interface TextSelectionEvent {
|
|
136
|
+
text: string;
|
|
137
|
+
pageIndex: number;
|
|
138
|
+
rects: DOMRect[];
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Complete PDF Viewer events map
|
|
142
|
+
*/
|
|
143
|
+
export interface PdfViewerEventMap {
|
|
144
|
+
"viewer:ready": CustomEvent<ViewerReadyEvent>;
|
|
145
|
+
"viewer:destroy": CustomEvent<ViewerDestroyEvent>;
|
|
146
|
+
"document:load": CustomEvent<DocumentLoadEvent>;
|
|
147
|
+
"document:unload": CustomEvent<DocumentUnloadEvent>;
|
|
148
|
+
"document:error": CustomEvent<DocumentErrorEvent>;
|
|
149
|
+
"document:change": CustomEvent<{
|
|
150
|
+
pageCount: number;
|
|
151
|
+
pageOrder: number[];
|
|
152
|
+
}>;
|
|
153
|
+
"page:change": CustomEvent<PageChangeEvent>;
|
|
154
|
+
"page:render": CustomEvent<PageRenderEvent>;
|
|
155
|
+
"page:render:after": CustomEvent<PageRenderEvent>;
|
|
156
|
+
"zoom:change": CustomEvent<ZoomChangeEvent>;
|
|
157
|
+
"rotation:change": CustomEvent<RotationChangeEvent>;
|
|
158
|
+
"mode:change": CustomEvent<ModeChangeEvent>;
|
|
159
|
+
"theme:change": CustomEvent<ThemeChangeEvent>;
|
|
160
|
+
"panel:open": CustomEvent<PanelOpenEvent>;
|
|
161
|
+
"panel:close": CustomEvent<PanelCloseEvent>;
|
|
162
|
+
"panel:resize": CustomEvent<PanelResizeEvent>;
|
|
163
|
+
"annotation:add": CustomEvent<AnnotationAddEvent>;
|
|
164
|
+
"annotation:update": CustomEvent<AnnotationUpdateEvent>;
|
|
165
|
+
"annotation:remove": CustomEvent<AnnotationRemoveEvent>;
|
|
166
|
+
"annotation:select": CustomEvent<AnnotationSelectEvent>;
|
|
167
|
+
"toolbar:action": CustomEvent<ToolbarActionEvent>;
|
|
168
|
+
"tool:select": CustomEvent<ToolSelectEvent>;
|
|
169
|
+
"export:start": CustomEvent<ExportStartEvent>;
|
|
170
|
+
"export:complete": CustomEvent<ExportCompleteEvent>;
|
|
171
|
+
"export:error": CustomEvent<ExportErrorEvent>;
|
|
172
|
+
"text:select": CustomEvent<TextSelectionEvent>;
|
|
173
|
+
"plugin:registered": CustomEvent<{
|
|
174
|
+
plugin: {
|
|
175
|
+
name: string;
|
|
176
|
+
version: string;
|
|
177
|
+
};
|
|
178
|
+
}>;
|
|
179
|
+
"plugin:unregistered": CustomEvent<{
|
|
180
|
+
pluginName: string;
|
|
181
|
+
}>;
|
|
182
|
+
"plugin:initialized": CustomEvent<{
|
|
183
|
+
pluginName: string;
|
|
184
|
+
}>;
|
|
185
|
+
"plugin:error": CustomEvent<{
|
|
186
|
+
pluginName: string;
|
|
187
|
+
error: Error;
|
|
188
|
+
}>;
|
|
189
|
+
"watermark:change": CustomEvent<{
|
|
190
|
+
watermark: unknown;
|
|
191
|
+
}>;
|
|
192
|
+
"watermark:applied": CustomEvent<{
|
|
193
|
+
watermark: unknown;
|
|
194
|
+
}>;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Type helper for creating typed custom events
|
|
198
|
+
*/
|
|
199
|
+
export declare function createViewerEvent<K extends keyof PdfViewerEventMap>(type: K, detail: PdfViewerEventMap[K] extends CustomEvent<infer D> ? D : never, options?: EventInit): PdfViewerEventMap[K];
|
|
200
|
+
/**
|
|
201
|
+
* Type-safe event listener helper
|
|
202
|
+
*/
|
|
203
|
+
export type PdfViewerEventListener<K extends keyof PdfViewerEventMap> = (event: PdfViewerEventMap[K]) => void;
|
|
204
|
+
/**
|
|
205
|
+
* Extended HTMLElement interface for PDF Viewer events
|
|
206
|
+
*/
|
|
207
|
+
export interface PdfViewerEventTarget {
|
|
208
|
+
addEventListener<K extends keyof PdfViewerEventMap>(type: K, listener: PdfViewerEventListener<K>, options?: boolean | AddEventListenerOptions): void;
|
|
209
|
+
removeEventListener<K extends keyof PdfViewerEventMap>(type: K, listener: PdfViewerEventListener<K>, options?: boolean | EventListenerOptions): void;
|
|
210
|
+
dispatchEvent<K extends keyof PdfViewerEventMap>(event: PdfViewerEventMap[K]): boolean;
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/viewer/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PdfData, Watermark } from '@jacktea/pdf-viewer-core';
|
|
2
|
+
export interface ExportOrchestratorContext {
|
|
3
|
+
sourceBytes: Uint8Array;
|
|
4
|
+
embedWatermark: boolean;
|
|
5
|
+
watermark: Watermark | null;
|
|
6
|
+
buildPdfData: () => Promise<PdfData>;
|
|
7
|
+
}
|
|
8
|
+
export declare function processPdfExportWithRust(context: ExportOrchestratorContext): Promise<Uint8Array>;
|
|
9
|
+
//# sourceMappingURL=export-orchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-orchestrator.d.ts","sourceRoot":"","sources":["../../src/viewer/export-orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,SAAS,EAGf,MAAM,0BAA0B,CAAC;AAGlC,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,UAAU,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACtC;AAoCD,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,UAAU,CAAC,CAwBrB"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { ViewerController, DocumentSource, PdfDocumentHandle, PdfLoaderOptions, ViewerState, Annotation, AnnotationComment, CommentThread } from '@jacktea/pdf-viewer-core';
|
|
2
|
+
import { ServerWritebackPayload } from './server-writeback';
|
|
3
|
+
/**
|
|
4
|
+
* Headless viewer options
|
|
5
|
+
*/
|
|
6
|
+
export interface HeadlessViewerOptions {
|
|
7
|
+
/** Container element for canvas rendering */
|
|
8
|
+
container: HTMLElement;
|
|
9
|
+
/** Called when a page is rendered */
|
|
10
|
+
onPageRender?: (pageIndex: number, canvas: HTMLCanvasElement, viewport: PageViewport) => void;
|
|
11
|
+
/** Called before a page is rendered */
|
|
12
|
+
onBeforePageRender?: (pageIndex: number) => void;
|
|
13
|
+
/** Called when document is loaded */
|
|
14
|
+
onDocumentLoad?: (document: PdfDocumentHandle, pageCount: number) => void;
|
|
15
|
+
/** Called when document is unloaded */
|
|
16
|
+
onDocumentUnload?: () => void;
|
|
17
|
+
/** Called when state changes */
|
|
18
|
+
onStateChange?: (state: ViewerState) => void;
|
|
19
|
+
/** Called when an annotation is clicked */
|
|
20
|
+
onAnnotationClick?: (annotation: Annotation, event: MouseEvent) => void;
|
|
21
|
+
/** Called when page changes */
|
|
22
|
+
onPageChange?: (page: number, pageCount: number) => void;
|
|
23
|
+
/** Called on error */
|
|
24
|
+
onError?: (error: Error) => void;
|
|
25
|
+
/** Minimum scale */
|
|
26
|
+
minScale?: number;
|
|
27
|
+
/** Maximum scale */
|
|
28
|
+
maxScale?: number;
|
|
29
|
+
/** Initial scale */
|
|
30
|
+
initialScale?: number;
|
|
31
|
+
/** Maximum undo stack size */
|
|
32
|
+
maxUndoStackSize?: number;
|
|
33
|
+
/** Enable high DPI rendering */
|
|
34
|
+
highDpi?: boolean;
|
|
35
|
+
/** Override PDF.js CMap/standard font resource directories */
|
|
36
|
+
pdfJsResources?: Partial<PdfLoaderOptions>;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Page viewport information
|
|
40
|
+
*/
|
|
41
|
+
export interface PageViewport {
|
|
42
|
+
width: number;
|
|
43
|
+
height: number;
|
|
44
|
+
scale: number;
|
|
45
|
+
rotation: number;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Headless viewer instance
|
|
49
|
+
*/
|
|
50
|
+
export interface HeadlessViewer {
|
|
51
|
+
/** Load a PDF document */
|
|
52
|
+
loadDocument(source: DocumentSource | string | Blob | ArrayBuffer | Uint8Array): Promise<void>;
|
|
53
|
+
/** Get current state */
|
|
54
|
+
getState(): ViewerState;
|
|
55
|
+
/** Subscribe to state changes */
|
|
56
|
+
subscribe(listener: (state: ViewerState) => void): () => void;
|
|
57
|
+
/** Set current page */
|
|
58
|
+
setPage(page: number): void;
|
|
59
|
+
/** Zoom in */
|
|
60
|
+
zoomIn(): void;
|
|
61
|
+
/** Zoom out */
|
|
62
|
+
zoomOut(): void;
|
|
63
|
+
/** Set scale */
|
|
64
|
+
setScale(scale: number): void;
|
|
65
|
+
/** Rotate document */
|
|
66
|
+
rotate(): void;
|
|
67
|
+
/** Set rotation */
|
|
68
|
+
setRotation(rotation: number): void;
|
|
69
|
+
/** Get underlying controller */
|
|
70
|
+
getController(): ViewerController;
|
|
71
|
+
/** Get PDF document */
|
|
72
|
+
getDocument(): PdfDocumentHandle | undefined;
|
|
73
|
+
/** Render a specific page to a canvas */
|
|
74
|
+
renderPage(pageIndex: number, canvas: HTMLCanvasElement, scale?: number): Promise<void>;
|
|
75
|
+
/** Render all visible pages */
|
|
76
|
+
renderVisiblePages(): Promise<void>;
|
|
77
|
+
/** Get annotations */
|
|
78
|
+
getAnnotations(): Annotation[];
|
|
79
|
+
/** Set annotations */
|
|
80
|
+
setAnnotations(annotations: Annotation[]): void;
|
|
81
|
+
/** Add annotation */
|
|
82
|
+
addAnnotation(annotation: Annotation): void;
|
|
83
|
+
/** Update annotation */
|
|
84
|
+
updateAnnotation(annotation: Annotation): void;
|
|
85
|
+
/** Remove annotation */
|
|
86
|
+
removeAnnotation(annotationId: string): void;
|
|
87
|
+
/** Get comment threads */
|
|
88
|
+
getCommentThreads(): CommentThread[];
|
|
89
|
+
/** Set comment threads */
|
|
90
|
+
setCommentThreads(threads: CommentThread[]): void;
|
|
91
|
+
/** Add comment */
|
|
92
|
+
addComment(comment: AnnotationComment): void;
|
|
93
|
+
/** Reconcile temporary local IDs/codes with server-generated values */
|
|
94
|
+
writeBackFromServer(payload: ServerWritebackPayload): void;
|
|
95
|
+
/** Export PDF */
|
|
96
|
+
exportPdf(): Promise<Uint8Array>;
|
|
97
|
+
/** Undo last action */
|
|
98
|
+
undo(): boolean;
|
|
99
|
+
/** Redo last undone action */
|
|
100
|
+
redo(): boolean;
|
|
101
|
+
/** Destroy the viewer */
|
|
102
|
+
destroy(): void;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Create a headless viewer instance
|
|
106
|
+
*/
|
|
107
|
+
export declare function createHeadlessViewer(options: HeadlessViewerOptions): HeadlessViewer;
|
|
108
|
+
//# sourceMappingURL=headless.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../src/viewer/headless.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACL,gBAAgB,EAEhB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,6CAA6C;IAC7C,SAAS,EAAE,WAAW,CAAC;IAEvB,qCAAqC;IACrC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAE9F,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjD,qCAAqC;IACrC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE1E,uCAAuC;IACvC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B,gCAAgC;IAChC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IAE7C,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAExE,+BAA+B;IAC/B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAEzD,sBAAsB;IACtB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,8BAA8B;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,gCAAgC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,8DAA8D;IAC9D,cAAc,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0BAA0B;IAC1B,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/F,wBAAwB;IACxB,QAAQ,IAAI,WAAW,CAAC;IAExB,iCAAiC;IACjC,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAE9D,uBAAuB;IACvB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,cAAc;IACd,MAAM,IAAI,IAAI,CAAC;IAEf,eAAe;IACf,OAAO,IAAI,IAAI,CAAC;IAEhB,gBAAgB;IAChB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B,sBAAsB;IACtB,MAAM,IAAI,IAAI,CAAC;IAEf,mBAAmB;IACnB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC,gCAAgC;IAChC,aAAa,IAAI,gBAAgB,CAAC;IAElC,uBAAuB;IACvB,WAAW,IAAI,iBAAiB,GAAG,SAAS,CAAC;IAE7C,yCAAyC;IACzC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExF,+BAA+B;IAC/B,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC,sBAAsB;IACtB,cAAc,IAAI,UAAU,EAAE,CAAC;IAE/B,sBAAsB;IACtB,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAEhD,qBAAqB;IACrB,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAE5C,wBAAwB;IACxB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAE/C,wBAAwB;IACxB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7C,0BAA0B;IAC1B,iBAAiB,IAAI,aAAa,EAAE,CAAC;IAErC,0BAA0B;IAC1B,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAElD,kBAAkB;IAClB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAE7C,uEAAuE;IACvE,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAE3D,iBAAiB;IACjB,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAEjC,uBAAuB;IACvB,IAAI,IAAI,OAAO,CAAC;IAEhB,8BAA8B;IAC9B,IAAI,IAAI,OAAO,CAAC;IAEhB,yBAAyB;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CA8QnF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Annotation } from '@jacktea/pdf-viewer-core';
|
|
2
|
+
interface AnnotationCoordinatorLike {
|
|
3
|
+
handleTextSelection(): void;
|
|
4
|
+
clearSelectionPopover(): void;
|
|
5
|
+
applyTextSelectionMark(detail: unknown): void;
|
|
6
|
+
getAnnotations(): Annotation[];
|
|
7
|
+
openTextEditor(annotation: Annotation): void;
|
|
8
|
+
}
|
|
9
|
+
interface ModeCoordinatorLike {
|
|
10
|
+
getScaleMode(): "page" | "width" | "actual";
|
|
11
|
+
applyScaleMode(): Promise<void> | void;
|
|
12
|
+
applyTheme(theme: string, element: HTMLElement): void;
|
|
13
|
+
}
|
|
14
|
+
interface TemplateLayerLike {
|
|
15
|
+
render(): void;
|
|
16
|
+
}
|
|
17
|
+
export interface InternalEventBindingContext {
|
|
18
|
+
target: HTMLElement;
|
|
19
|
+
getAnnotationCoordinator: () => AnnotationCoordinatorLike | undefined;
|
|
20
|
+
getModeCoordinator: () => ModeCoordinatorLike | undefined;
|
|
21
|
+
getTemplateLayer: () => TemplateLayerLike | undefined;
|
|
22
|
+
setControllerScale: (scale: number) => void;
|
|
23
|
+
}
|
|
24
|
+
export declare function bindInternalEventListeners(context: InternalEventBindingContext): () => void;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=internal-event-bindings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-event-bindings.d.ts","sourceRoot":"","sources":["../../src/viewer/internal-event-bindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,UAAU,yBAAyB;IACjC,mBAAmB,IAAI,IAAI,CAAC;IAC5B,qBAAqB,IAAI,IAAI,CAAC;IAC9B,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9C,cAAc,IAAI,UAAU,EAAE,CAAC;IAC/B,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;CAC9C;AAED,UAAU,mBAAmB;IAC3B,YAAY,IAAI,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;CACvD;AAED,UAAU,iBAAiB;IACzB,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,WAAW,CAAC;IACpB,wBAAwB,EAAE,MAAM,yBAAyB,GAAG,SAAS,CAAC;IACtE,kBAAkB,EAAE,MAAM,mBAAmB,GAAG,SAAS,CAAC;IAC1D,gBAAgB,EAAE,MAAM,iBAAiB,GAAG,SAAS,CAAC;IACtD,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,2BAA2B,GACnC,MAAM,IAAI,CA8DZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-event-bindings.test.d.ts","sourceRoot":"","sources":["../../src/viewer/internal-event-bindings.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface ModalOptions {
|
|
2
|
+
title: string;
|
|
3
|
+
content: HTMLElement;
|
|
4
|
+
footer?: HTMLElement;
|
|
5
|
+
onClose?: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare class Modal {
|
|
8
|
+
private options;
|
|
9
|
+
readonly element: HTMLDivElement;
|
|
10
|
+
private backdrop;
|
|
11
|
+
private container;
|
|
12
|
+
constructor(options: ModalOptions);
|
|
13
|
+
open(parent: HTMLElement): void;
|
|
14
|
+
close(): void;
|
|
15
|
+
private createHost;
|
|
16
|
+
private createBackdrop;
|
|
17
|
+
private createContainer;
|
|
18
|
+
private createHeader;
|
|
19
|
+
private createBody;
|
|
20
|
+
private createFooter;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=modal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/viewer/modal.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,qBAAa,KAAK;IAKJ,OAAO,CAAC,OAAO;IAJ3B,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,SAAS,CAAiB;gBAEd,OAAO,EAAE,YAAY;IAMzC,IAAI,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAM/B,KAAK,IAAI,IAAI;IAYb,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,YAAY;CAMrB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { PageIndicatorConfig } from './config';
|
|
2
|
+
export interface PageIndicatorHandlers {
|
|
3
|
+
onPageChange?: (page: number) => void;
|
|
4
|
+
onPageCommit?: () => void;
|
|
5
|
+
onZoomIn?: () => void;
|
|
6
|
+
onZoomOut?: () => void;
|
|
7
|
+
onZoomChange?: (scale: number) => void;
|
|
8
|
+
onZoomModeChange?: () => void;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Default page indicator configuration
|
|
12
|
+
*/
|
|
13
|
+
export declare const DEFAULT_PAGE_INDICATOR_CONFIG: PageIndicatorConfig;
|
|
14
|
+
/**
|
|
15
|
+
* PageIndicator class
|
|
16
|
+
*/
|
|
17
|
+
export declare class PageIndicator {
|
|
18
|
+
private handlers;
|
|
19
|
+
readonly element: HTMLDivElement;
|
|
20
|
+
private pageInput;
|
|
21
|
+
private pageTotal;
|
|
22
|
+
private zoomInput;
|
|
23
|
+
private currentConfig;
|
|
24
|
+
constructor(handlers: PageIndicatorHandlers, config?: PageIndicatorConfig);
|
|
25
|
+
/**
|
|
26
|
+
* Update page indicator state
|
|
27
|
+
*/
|
|
28
|
+
setState(page: number, pageCount: number, scale: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* Set visibility
|
|
31
|
+
*/
|
|
32
|
+
setVisible(visible: boolean): void;
|
|
33
|
+
/**
|
|
34
|
+
* Update configuration dynamically
|
|
35
|
+
*/
|
|
36
|
+
setConfig(config: PageIndicatorConfig): void;
|
|
37
|
+
/**
|
|
38
|
+
* Get the page input element for external access
|
|
39
|
+
*/
|
|
40
|
+
getPageInput(): HTMLInputElement | null;
|
|
41
|
+
/**
|
|
42
|
+
* Get the page total element for external access
|
|
43
|
+
*/
|
|
44
|
+
getPageTotal(): HTMLSpanElement | null;
|
|
45
|
+
private createElement;
|
|
46
|
+
private renderItems;
|
|
47
|
+
private createItem;
|
|
48
|
+
private createPageInput;
|
|
49
|
+
private createSeparator;
|
|
50
|
+
private createPageTotal;
|
|
51
|
+
private createZoomButton;
|
|
52
|
+
private createZoomInput;
|
|
53
|
+
private createZoomModeButton;
|
|
54
|
+
private handleZoomInputChange;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=page-indicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-indicator.d.ts","sourceRoot":"","sources":["../../src/viewer/page-indicator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAqB,MAAM,UAAU,CAAC;AAGvE,MAAM,WAAW,qBAAqB;IACpC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,mBAE3C,CAAC;AAEF;;GAEG;AACH,qBAAa,aAAa;IAStB,OAAO,CAAC,QAAQ;IARlB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,aAAa,CAAsB;gBAGjC,QAAQ,EAAE,qBAAqB,EACvC,MAAM,CAAC,EAAE,mBAAmB;IAO9B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAc9D;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAwB5C;;OAEG;IACH,YAAY,IAAI,gBAAgB,GAAG,IAAI;IAIvC;;OAEG;IACH,YAAY,IAAI,eAAe,GAAG,IAAI;IAItC,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,qBAAqB;CAQ9B"}
|