@pdfslick/core 1.1.1 → 1.1.3

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 (54) hide show
  1. package/README.md +119 -0
  2. package/dist/esm/PDFSlick.d.ts +103 -0
  3. package/dist/esm/PDFSlick.d.ts.map +1 -0
  4. package/dist/esm/index.d.ts +5 -0
  5. package/dist/esm/index.d.ts.map +1 -0
  6. package/dist/esm/index.js +2912 -0
  7. package/dist/esm/lib/index.d.ts +7 -0
  8. package/dist/esm/lib/index.d.ts.map +1 -0
  9. package/dist/esm/lib/overlay_manager.d.ts +32 -0
  10. package/dist/esm/lib/overlay_manager.d.ts.map +1 -0
  11. package/dist/esm/lib/pdf_presentation_mode.d.ts +46 -0
  12. package/dist/esm/lib/pdf_presentation_mode.d.ts.map +1 -0
  13. package/dist/esm/lib/pdf_print_service.d.ts +30 -0
  14. package/dist/esm/lib/pdf_print_service.d.ts.map +1 -0
  15. package/dist/esm/lib/pdf_rendering_queue.d.ts +65 -0
  16. package/dist/esm/lib/pdf_rendering_queue.d.ts.map +1 -0
  17. package/dist/esm/lib/pdf_thumbnail_view.d.ts +101 -0
  18. package/dist/esm/lib/pdf_thumbnail_view.d.ts.map +1 -0
  19. package/dist/esm/lib/pdf_thumbnail_viewer.d.ts +119 -0
  20. package/dist/esm/lib/pdf_thumbnail_viewer.d.ts.map +1 -0
  21. package/dist/esm/lib/ui_utils.d.ts +292 -0
  22. package/dist/esm/lib/ui_utils.d.ts.map +1 -0
  23. package/dist/esm/store.d.ts +4 -0
  24. package/dist/esm/store.d.ts.map +1 -0
  25. package/dist/esm/types.d.ts +111 -0
  26. package/dist/esm/types.d.ts.map +1 -0
  27. package/dist/pdf_viewer.css +2762 -0
  28. package/dist/tsconfig.tsbuildinfo +1 -0
  29. package/dist/umd/PDFSlick.d.ts +103 -0
  30. package/dist/umd/PDFSlick.d.ts.map +1 -0
  31. package/dist/umd/index.d.ts +5 -0
  32. package/dist/umd/index.d.ts.map +1 -0
  33. package/dist/umd/index.js +45 -0
  34. package/dist/umd/lib/index.d.ts +7 -0
  35. package/dist/umd/lib/index.d.ts.map +1 -0
  36. package/dist/umd/lib/overlay_manager.d.ts +32 -0
  37. package/dist/umd/lib/overlay_manager.d.ts.map +1 -0
  38. package/dist/umd/lib/pdf_presentation_mode.d.ts +46 -0
  39. package/dist/umd/lib/pdf_presentation_mode.d.ts.map +1 -0
  40. package/dist/umd/lib/pdf_print_service.d.ts +30 -0
  41. package/dist/umd/lib/pdf_print_service.d.ts.map +1 -0
  42. package/dist/umd/lib/pdf_rendering_queue.d.ts +65 -0
  43. package/dist/umd/lib/pdf_rendering_queue.d.ts.map +1 -0
  44. package/dist/umd/lib/pdf_thumbnail_view.d.ts +101 -0
  45. package/dist/umd/lib/pdf_thumbnail_view.d.ts.map +1 -0
  46. package/dist/umd/lib/pdf_thumbnail_viewer.d.ts +119 -0
  47. package/dist/umd/lib/pdf_thumbnail_viewer.d.ts.map +1 -0
  48. package/dist/umd/lib/ui_utils.d.ts +292 -0
  49. package/dist/umd/lib/ui_utils.d.ts.map +1 -0
  50. package/dist/umd/store.d.ts +4 -0
  51. package/dist/umd/store.d.ts.map +1 -0
  52. package/dist/umd/types.d.ts +111 -0
  53. package/dist/umd/types.d.ts.map +1 -0
  54. package/package.json +2 -2
@@ -0,0 +1,7 @@
1
+ export * from "./pdf_rendering_queue";
2
+ export * from "./pdf_thumbnail_view";
3
+ export * from "./pdf_thumbnail_viewer";
4
+ export * from "./pdf_print_service";
5
+ export * from "./pdf_presentation_mode";
6
+ export * from "./ui_utils";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,YAAY,CAAA"}
@@ -0,0 +1,32 @@
1
+ declare class OverlayManager {
2
+ #private;
3
+ get active(): HTMLDialogElement | null;
4
+ /**
5
+ * @param {HTMLDialogElement} dialog - The overlay's DOM element.
6
+ * @param {boolean} [canForceClose] - Indicates if opening the overlay closes
7
+ * an active overlay. The default is `false`.
8
+ * @returns {Promise} A promise that is resolved when the overlay has been
9
+ * registered.
10
+ */
11
+ register(dialog: HTMLDialogElement, canForceClose?: boolean): Promise<void>;
12
+ /**
13
+ * @param {HTMLDialogElement} dialog - The overlay's DOM element.
14
+ * @returns {Promise} A promise that is resolved when the overlay has been
15
+ * unregistered.
16
+ */
17
+ unregister(dialog: HTMLDialogElement): Promise<void>;
18
+ /**
19
+ * @param {HTMLDialogElement} dialog - The overlay's DOM element.
20
+ * @returns {Promise} A promise that is resolved when the overlay has been
21
+ * opened.
22
+ */
23
+ open(dialog: HTMLDialogElement): Promise<void>;
24
+ /**
25
+ * @param {HTMLDialogElement} dialog - The overlay's DOM element.
26
+ * @returns {Promise} A promise that is resolved when the overlay has been
27
+ * closed.
28
+ */
29
+ close(dialog?: HTMLDialogElement | null): Promise<void>;
30
+ }
31
+ export { OverlayManager };
32
+ //# sourceMappingURL=overlay_manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay_manager.d.ts","sourceRoot":"","sources":["../../lib/overlay_manager.ts"],"names":[],"mappings":"AAeA,cAAM,cAAc;;IAKlB,IAAI,MAAM,6BAET;IAED;;;;;;OAMG;IACG,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,aAAa,UAAQ;IAa/D;;;;OAIG;IACG,UAAU,CAAC,MAAM,EAAE,iBAAiB;IAS1C;;;;OAIG;IACG,IAAI,CAAC,MAAM,EAAE,iBAAiB;IAgBpC;;;;OAIG;IACG,KAAK,CAAC,MAAM,2BAAe;CAWlC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { EventBus, PDFViewer } from "pdfjs-dist/web/pdf_viewer";
2
+ /**
3
+ * @typedef {Object} PDFPresentationModeOptions
4
+ * @property {HTMLDivElement} container - The container for the viewer element.
5
+ * @property {PDFViewer} pdfViewer - The document viewer.
6
+ * @property {EventBus} eventBus - The application event bus.
7
+ */
8
+ declare class PDFPresentationMode {
9
+ #private;
10
+ container: HTMLDivElement;
11
+ pdfViewer: PDFViewer;
12
+ eventBus: EventBus;
13
+ contextMenuOpen: boolean;
14
+ mouseScrollTimeStamp: number;
15
+ mouseScrollDelta: number;
16
+ touchSwipeState: null | {
17
+ startX: number;
18
+ startY: number;
19
+ endX: number;
20
+ endY: number;
21
+ };
22
+ controlsTimeout?: ReturnType<typeof setTimeout>;
23
+ showControlsBind?: (e: any) => void;
24
+ mouseDownBind?: (e: any) => void;
25
+ mouseWheelBind?: (e: any) => void;
26
+ resetMouseScrollStateBind?: (e: any) => void;
27
+ contextMenuBind?: (e: any) => void;
28
+ touchSwipeBind?: (e: any) => void;
29
+ fullscreenChangeBind?: (e: any) => void;
30
+ /**
31
+ * @param {PDFPresentationModeOptions} options
32
+ */
33
+ constructor({ container, pdfViewer, eventBus }: {
34
+ container: HTMLDivElement;
35
+ pdfViewer: PDFViewer;
36
+ eventBus: EventBus;
37
+ });
38
+ /**
39
+ * Request the browser to enter fullscreen mode.
40
+ * @returns {Promise<boolean>} Indicating if the request was successful.
41
+ */
42
+ request(): Promise<boolean>;
43
+ get active(): boolean;
44
+ }
45
+ export { PDFPresentationMode };
46
+ //# sourceMappingURL=pdf_presentation_mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf_presentation_mode.d.ts","sourceRoot":"","sources":["../../lib/pdf_presentation_mode.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAehE;;;;;GAKG;AAEH,cAAM,mBAAmB;;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,eAAe,EAAE,OAAO,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,IAAI,GAAG;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAA;KACb,CAAC;IAEF,eAAe,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAEhD,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,yBAAyB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACnC,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAYxC;;OAEG;gBACS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;QAAE,SAAS,EAAE,cAAc,CAAC;QAAC,SAAS,EAAE,SAAS,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAA;KAAE;IAWvH;;;OAGG;IACG,OAAO;IA4Cb,IAAI,MAAM,YAKT;CAyRF;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { PDFDocumentProxy } from "pdfjs-dist";
2
+ import { NullL10n } from "pdfjs-dist/web/pdf_viewer";
3
+ declare class PDFPrintService {
4
+ pdfDocument: PDFDocumentProxy;
5
+ pagesOverview: any;
6
+ printContainer: HTMLElement;
7
+ _printResolution: number;
8
+ _optionalContentConfigPromise: any;
9
+ _printAnnotationStoragePromise: any;
10
+ l10n: typeof NullL10n;
11
+ currentPage: number;
12
+ scratchCanvas: HTMLCanvasElement | null;
13
+ pageStyleSheet: HTMLStyleElement | null;
14
+ constructor(pdfDocument: PDFDocumentProxy, pagesOverview: any, printContainer: HTMLElement, printResolution: number, optionalContentConfigPromise: null | undefined, printAnnotationStoragePromise: null | undefined, l10n: typeof NullL10n);
15
+ layout(): void;
16
+ destroy(): void;
17
+ renderPages(): Promise<unknown>;
18
+ useRenderedPage(): Promise<unknown>;
19
+ performPrint(): Promise<void>;
20
+ get active(): boolean;
21
+ throwIfInactive(): void;
22
+ }
23
+ declare const PDFPrintServiceFactory: {
24
+ instance: {
25
+ supportsPrinting: boolean;
26
+ createPrintService(pdfDocument: PDFDocumentProxy, pagesOverview: any, printContainer: HTMLElement, printResolution: number, optionalContentConfigPromise: any, printAnnotationStoragePromise: any, l10n: any): PDFPrintService;
27
+ };
28
+ };
29
+ export { PDFPrintService, PDFPrintServiceFactory };
30
+ //# sourceMappingURL=pdf_print_service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf_print_service.d.ts","sourceRoot":"","sources":["../../lib/pdf_print_service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAqD,gBAAgB,EAAgB,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAsC,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AA2EzF,cAAM,eAAe;IACnB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,aAAa,EAAE,GAAG,CAAC;IACnB,cAAc,EAAE,WAAW,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,6BAA6B,EAAE,GAAG,CAAC;IACnC,8BAA8B,EAAE,GAAG,CAAC;IACpC,IAAI,EAAE,OAAO,QAAQ,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACxC,cAAc,EAAE,gBAAgB,GAAG,IAAI,CAAC;gBAGtC,WAAW,EAAE,gBAAgB,EAC7B,aAAa,EAAE,GAAG,EAClB,cAAc,EAAE,WAAW,EAC3B,eAAe,EAAE,MAAM,EACvB,4BAA4B,kBAAO,EACnC,6BAA6B,kBAAO,EACpC,IAAI,EAAE,OAAO,QAAQ;IAgBvB,MAAM;IAmCN,OAAO;IAyBP,WAAW;IAiCX,eAAe;IAuBf,YAAY;IAkBZ,IAAI,MAAM,YAET;IAED,eAAe;CAKhB;AA2HD,QAAA,MAAM,sBAAsB;;;wCAIT,gBAAgB,iBACd,GAAG,kBACF,WAAW,mBACV,MAAM,gCACO,GAAG,iCACF,GAAG,QAC5B,GAAG;;CAiBd,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,CAAC"}
@@ -0,0 +1,65 @@
1
+ import { PDFThumbnailView } from "./pdf_thumbnail_view";
2
+ import { IRenderableView } from "pdfjs-dist/types/web/interfaces.js";
3
+ import { PDFThumbnailViewer } from "./pdf_thumbnail_viewer";
4
+ import { PDFViewer, PDFPageView } from "pdfjs-dist/web/pdf_viewer";
5
+ /**
6
+ * Controls rendering of the views for pages and thumbnails.
7
+ */
8
+ declare class PDFRenderingQueue {
9
+ pdfViewer: PDFViewer | null;
10
+ pdfThumbnailViewer: PDFThumbnailViewer | null;
11
+ onIdle: (() => void) | null;
12
+ highestPriorityPage: string | null;
13
+ idleTimeout: ReturnType<typeof setTimeout> | null;
14
+ printing: boolean;
15
+ isThumbnailViewEnabled: boolean;
16
+ constructor();
17
+ /**
18
+ * @param {PDFViewer} pdfViewer
19
+ */
20
+ setViewer(pdfViewer: PDFViewer): void;
21
+ /**
22
+ * @param {PDFThumbnailViewer} pdfThumbnailViewer
23
+ */
24
+ setThumbnailViewer(pdfThumbnailViewer: PDFThumbnailViewer): void;
25
+ /**
26
+ * @param {IRenderableView} view
27
+ * @returns {boolean}
28
+ */
29
+ isHighestPriority(view: PDFPageView): boolean;
30
+ /**
31
+ * @returns {boolean}
32
+ */
33
+ hasViewer(): boolean;
34
+ /**
35
+ * @param {Object} currentlyVisiblePages
36
+ */
37
+ renderHighestPriority(currentlyVisiblePages?: Object): void;
38
+ /**
39
+ * @param {Object} visible
40
+ * @param {Array} views
41
+ * @param {boolean} scrolledDown
42
+ * @param {boolean} [preRenderExtra]
43
+ */
44
+ getHighestPriority(visible: {
45
+ first: any;
46
+ last: any;
47
+ views: any;
48
+ ids: any;
49
+ }, views: PDFThumbnailView[], scrolledDown: boolean, preRenderExtra?: boolean): any;
50
+ /**
51
+ * @param {IRenderableView} view
52
+ * @returns {boolean}
53
+ */
54
+ isViewFinished(view: IRenderableView): boolean;
55
+ /**
56
+ * Render a page or thumbnail view. This calls the appropriate function
57
+ * based on the views state. If the view is already rendered it will return
58
+ * `false`.
59
+ *
60
+ * @param {IRenderableView} view
61
+ */
62
+ renderView(view: IRenderableView): boolean;
63
+ }
64
+ export { PDFRenderingQueue };
65
+ //# sourceMappingURL=pdf_rendering_queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf_rendering_queue.d.ts","sourceRoot":"","sources":["../../lib/pdf_rendering_queue.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAInE;;GAEG;AACH,cAAM,iBAAiB;IACrB,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;IAC3B,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC7C,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;IAC3B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAA;IAClC,WAAW,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI,CAAA;IACjD,QAAQ,EAAE,OAAO,CAAA;IACjB,sBAAsB,EAAE,OAAO,CAAA;;IAa/B;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,SAAS;IAI9B;;OAEG;IACH,kBAAkB,CAAC,kBAAkB,EAAE,kBAAkB;IAIzD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,WAAW;IAInC;;OAEG;IACH,SAAS;IAIT;;OAEG;IACH,qBAAqB,CAAC,qBAAqB,CAAC,EAAE,MAAM;IA4BpD;;;;;OAKG;IACH,kBAAkB,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,IAAI,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,GAAG,CAAC;QAAC,GAAG,EAAE,GAAG,CAAA;KAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,UAAQ;IA6DrJ;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe;IAIpC;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE,eAAe;CA4BjC;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { PDFPageProxy, PageViewport } from "pdfjs-dist";
2
+ import { PDFViewer, PDFPageView } from "pdfjs-dist/web/pdf_viewer";
3
+ import { StoreApi } from "zustand/vanilla";
4
+ import type { PDFSlickState } from "../types";
5
+ /**
6
+ * @typedef {Object} PDFThumbnailViewOptions
7
+ * @property {HTMLDivElement} container - The viewer element.
8
+ * @property {number} id - The thumbnail's unique ID (normally its number).
9
+ * @property {PageViewport} defaultViewport - The page viewport.
10
+ * @property {Promise<OptionalContentConfig>} [optionalContentConfigPromise] -
11
+ * A promise that is resolved with an {@link OptionalContentConfig} instance.
12
+ * The default value is `null`.
13
+ * @property {IPDFLinkService} linkService - The navigation/linking service.
14
+ * @property {PDFRenderingQueue} renderingQueue - The rendering queue object.
15
+ * @property {IL10n} l10n - Localization service.
16
+ * @property {Object} [pageColors] - Overwrites background and foreground colors
17
+ * with user defined ones in order to improve readability in high contrast
18
+ * mode.
19
+ */
20
+ declare class TempImageFactory {
21
+ #private;
22
+ static getCanvas(width: number, height: number): [HTMLCanvasElement, CanvasRenderingContext2D];
23
+ static destroyCanvas(): void;
24
+ }
25
+ /**
26
+ * @implements {IRenderableView}
27
+ */
28
+ declare class PDFThumbnailView {
29
+ container: HTMLElement;
30
+ id: number;
31
+ viewport: PageViewport;
32
+ optionalContentConfigPromise: any;
33
+ _optionalContentConfigPromise: any;
34
+ linkService: any;
35
+ renderingQueue: any;
36
+ l10n: any;
37
+ pageColors: Object | null;
38
+ store: StoreApi<PDFSlickState>;
39
+ thumbnailWidth: number;
40
+ loaded: boolean;
41
+ renderingId: string;
42
+ pageLabel: string | null;
43
+ rotation: number;
44
+ pdfPageRotate: number;
45
+ renderTask: any;
46
+ renderingState: number;
47
+ resume: any;
48
+ canvasWidth: number;
49
+ canvasHeight: number;
50
+ scale: number;
51
+ pdfPage: PDFPageProxy | null;
52
+ src?: string | null;
53
+ canvas?: HTMLCanvasElement | null;
54
+ div: HTMLDivElement;
55
+ /**
56
+ * @param {PDFThumbnailViewOptions} options
57
+ */
58
+ constructor({ container, id, defaultViewport, optionalContentConfigPromise, linkService, renderingQueue, l10n, pageColors, store, thumbnailWidth }: {
59
+ id: any;
60
+ container: HTMLElement;
61
+ defaultViewport: any;
62
+ store: StoreApi<PDFSlickState>;
63
+ thumbnailWidth: number;
64
+ } & Partial<Omit<PDFViewer, "container">>);
65
+ setPdfPage(pdfPage: PDFPageProxy): void;
66
+ reset(): void;
67
+ update({ rotation }: {
68
+ rotation: number | null;
69
+ }): void;
70
+ /**
71
+ * PLEASE NOTE: Most likely you want to use the `this.reset()` method,
72
+ * rather than calling this one directly.
73
+ */
74
+ cancelRendering(): void;
75
+ /**
76
+ * @private
77
+ */
78
+ _getPageDrawContext(upscaleFactor?: number): {
79
+ ctx: CanvasRenderingContext2D | null;
80
+ canvas: HTMLCanvasElement;
81
+ transform: number[] | null;
82
+ };
83
+ /**
84
+ * @private
85
+ */
86
+ _convertCanvasToImage(canvas: HTMLCanvasElement): void;
87
+ draw(): Promise<void>;
88
+ setImage(pageView: PDFPageView): void;
89
+ /**
90
+ * @private
91
+ */
92
+ _reduceImage(img: HTMLCanvasElement): HTMLCanvasElement;
93
+ get _thumbPageTitle(): any;
94
+ get _thumbPageCanvas(): any;
95
+ /**
96
+ * @param {string|null} label
97
+ */
98
+ setPageLabel(label: string): void;
99
+ }
100
+ export { PDFThumbnailView, TempImageFactory };
101
+ //# sourceMappingURL=pdf_thumbnail_view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf_thumbnail_view.d.ts","sourceRoot":"","sources":["../../lib/pdf_thumbnail_view.ts"],"names":[],"mappings":"AAsBA,OAAO,EAA+B,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAO9C;;;;;;;;;;;;;;GAcG;AAEH,cAAM,gBAAgB;;IAGpB,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAiB9C,MAAM,CAAC,aAAa;CAUrB;AAED;;GAEG;AACH,cAAM,gBAAgB;IACpB,SAAS,EAAE,WAAW,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,YAAY,CAAC;IACvB,4BAA4B,EAAE,GAAG,CAAC;IAClC,6BAA6B,EAAE,GAAG,CAAC;IACnC,WAAW,EAAE,GAAG,CAAC;IACjB,cAAc,EAAE,GAAG,CAAC;IACpB,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAEhB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IAEtB,UAAU,EAAE,GAAG,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,GAAG,CAAC;IAEZ,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IAEd,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAE7B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAElC,GAAG,EAAE,cAAc,CAAC;IAEpB;;OAEG;gBACS,EACV,SAAS,EACT,EAAE,EACF,eAAe,EACf,4BAA4B,EAC5B,WAAW,EACX,cAAc,EACd,IAAI,EACJ,UAAU,EACV,KAAK,EACL,cAAc,EACf,EAAE;QAAE,EAAE,EAAE,GAAG,CAAC;QAAC,SAAS,EAAE,WAAW,CAAC;QAAC,eAAe,EAAE,GAAG,CAAC;QAAC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IA4C5J,UAAU,CAAC,OAAO,EAAE,YAAY;IAQhC,KAAK;IAuBL,MAAM,CAAC,EAAE,QAAe,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAYvD;;;OAGG;IACH,eAAe;IAQf;;OAEG;IACH,mBAAmB,CAAC,aAAa,SAAI;;;;;IAiBrC;;OAEG;IACH,qBAAqB,CAAC,MAAM,EAAE,iBAAiB;IAqB/C,IAAI;IA0FJ,QAAQ,CAAC,QAAQ,EAAE,WAAW;IAmB9B;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,iBAAiB;IAqEnC,IAAI,eAAe,QAIlB;IAED,IAAI,gBAAgB,QAInB;IAED;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM;CAe3B;AAED,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,119 @@
1
+ import { PDFThumbnailView } from "./pdf_thumbnail_view";
2
+ import { PDFDocumentProxy } from "pdfjs-dist";
3
+ import { StoreApi } from "zustand/vanilla";
4
+ import type { PDFSlickState } from "../types";
5
+ /**
6
+ * @typedef {Object} PDFThumbnailViewerOptions
7
+ * @property {HTMLDivElement} container - The container for the thumbnail
8
+ * elements.
9
+ * @property {IPDFLinkService} linkService - The navigation/linking service.
10
+ * @property {PDFRenderingQueue} renderingQueue - The rendering queue object.
11
+ * @property {IL10n} l10n - Localization service.
12
+ * @property {Object} [pageColors] - Overwrites background and foreground colors
13
+ * with user defined ones in order to improve readability in high contrast
14
+ * mode.
15
+ */
16
+ /**
17
+ * Viewer control to display thumbnails for pages in a PDF document.
18
+ */
19
+ declare class PDFThumbnailViewer {
20
+ #private;
21
+ container: HTMLElement;
22
+ linkService: any;
23
+ renderingQueue: any;
24
+ l10n: any;
25
+ pageColors: {
26
+ background: any;
27
+ foreground: any;
28
+ } | null;
29
+ scroll: any;
30
+ _thumbnails: PDFThumbnailView[];
31
+ _currentPageNumber: number;
32
+ _pagesRotation?: number | null;
33
+ _pageLabels: string[];
34
+ pdfDocument: PDFDocumentProxy | null;
35
+ store: StoreApi<PDFSlickState>;
36
+ thumbnailWidth: number;
37
+ /**
38
+ * @param {PDFThumbnailViewerOptions} options
39
+ */
40
+ constructor({ container, linkService, renderingQueue, l10n, pageColors, store, thumbnailWidth }: {
41
+ container: HTMLDivElement;
42
+ linkService: any;
43
+ renderingQueue: any;
44
+ l10n: any;
45
+ pageColors: {
46
+ background: any;
47
+ foreground: any;
48
+ } | null;
49
+ store: StoreApi<PDFSlickState>;
50
+ thumbnailWidth: number;
51
+ });
52
+ /**
53
+ * @private
54
+ */
55
+ _scrollUpdated(): void;
56
+ getThumbnail(index: number): PDFThumbnailView;
57
+ /**
58
+ * @private
59
+ */
60
+ _getVisibleThumbs(): {
61
+ first: {
62
+ id: any;
63
+ x: number;
64
+ y: number;
65
+ view: {
66
+ div: HTMLElement;
67
+ id: any;
68
+ };
69
+ percent: number;
70
+ widthPercent: number;
71
+ };
72
+ last: {
73
+ id: any;
74
+ x: number;
75
+ y: number;
76
+ view: {
77
+ div: HTMLElement;
78
+ id: any;
79
+ };
80
+ percent: number;
81
+ widthPercent: number;
82
+ } | undefined;
83
+ views: {
84
+ id: any;
85
+ x: number;
86
+ y: number;
87
+ view: {
88
+ div: HTMLElement;
89
+ id: any;
90
+ };
91
+ percent: number;
92
+ widthPercent: number;
93
+ }[];
94
+ ids: Set<unknown>;
95
+ };
96
+ scrollThumbnailIntoView(pageNumber: number): void;
97
+ get pagesRotation(): number | null | undefined;
98
+ set pagesRotation(rotation: number | null | undefined);
99
+ cleanup(): void;
100
+ /**
101
+ * @private
102
+ */
103
+ _resetView(): void;
104
+ /**
105
+ * @param {PDFDocumentProxy} pdfDocument
106
+ */
107
+ setDocument(pdfDocument: PDFDocumentProxy): void;
108
+ /**
109
+ * @private
110
+ */
111
+ _cancelRendering(): void;
112
+ /**
113
+ * @param {Array|null} labels
114
+ */
115
+ setPageLabels(labels: string[]): void;
116
+ forceRendering(): boolean;
117
+ }
118
+ export { PDFThumbnailViewer };
119
+ //# sourceMappingURL=pdf_thumbnail_viewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pdf_thumbnail_viewer.d.ts","sourceRoot":"","sources":["../../lib/pdf_thumbnail_viewer.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,gBAAgB,EAAoB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAK9C;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,cAAM,kBAAkB;;IACtB,SAAS,EAAE,WAAW,CAAC;IACvB,WAAW,EAAE,GAAG,CAAC;IACjB,cAAc,EAAE,GAAG,CAAC;IACpB,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE;QAAE,UAAU,EAAE,GAAG,CAAC;QAAC,UAAU,EAAE,GAAG,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,MAAM,EAAE,GAAG,CAAC;IAEZ,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAErC,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;gBACS,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;QAC/F,SAAS,EAAE,cAAc,CAAC;QAC1B,WAAW,EAAE,GAAG,CAAC;QACjB,cAAc,EAAE,GAAG,CAAC;QACpB,IAAI,EAAE,GAAG,CAAC;QACV,UAAU,EAAE;YAAE,UAAU,EAAE,GAAG,CAAC;YAAC,UAAU,EAAE,GAAG,CAAA;SAAE,GAAG,IAAI,CAAC;QACxD,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC/B,cAAc,EAAE,MAAM,CAAA;KACvB;IAqCD;;OAEG;IACH,cAAc;IAId,YAAY,CAAC,KAAK,EAAE,MAAM;IAI1B;;OAEG;IACH,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOjB,uBAAuB,CAAC,UAAU,EAAE,MAAM;IA6C1C,IAAI,aAAa,8BAEhB;IAED,IAAI,aAAa,CAAC,QAAQ,2BAAA,EAgBzB;IAED,OAAO;IASP;;OAEG;IACH,UAAU;IAUV;;OAEG;IACH,WAAW,CAAC,WAAW,EAAE,gBAAgB;IAiDzC;;OAEG;IACH,gBAAgB;IAMhB;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE;IAkD9B,cAAc;CAkBf;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}