@react-pdf-kit/viewer 2.3.0-beta.2 → 2.3.0-beta.4

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 (53) hide show
  1. package/dist/PaginationContext-15f88187.js +222 -0
  2. package/dist/RPSplitter-b62772f9.js +122 -0
  3. package/dist/components/RPController.js +1 -1
  4. package/dist/components/RPPages.js +530 -503
  5. package/dist/components/RPProvider.js +50 -48
  6. package/dist/components/layout/RPDefaultLayout.js +2 -2
  7. package/dist/components/layout/RPLayout.js +2 -2
  8. package/dist/components/layout/sidebar/RPSidebar.js +5 -4
  9. package/dist/components/layout/sidebar/RPSplitter.js +3 -2
  10. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  11. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  12. package/dist/components/layout/toolbar/MostPageTool.js +1 -1
  13. package/dist/components/layout/toolbar/OtherTool.js +1 -1
  14. package/dist/components/layout/toolbar/Paginate.js +1 -1
  15. package/dist/components/layout/toolbar/RPMoreOptions.js +1 -1
  16. package/dist/components/layout/toolbar/RPToolbar.js +1 -1
  17. package/dist/components/layout/toolbar/RPToolbarEnd.js +1 -1
  18. package/dist/components/layout/toolbar/SearchResultNavigator.js +1 -1
  19. package/dist/components/layout/toolbar/SearchTool.js +1 -1
  20. package/dist/components/layout/toolbar/ToolbarCustom.js +5 -4
  21. package/dist/components/layout/toolbar/ToolbarDefault.js +2 -2
  22. package/dist/components/layout/toolbar/ToolbarLayout.js +2 -2
  23. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +2 -2
  24. package/dist/components/layout/toolbar/tools/FirstPageTool.js +2 -2
  25. package/dist/components/layout/toolbar/tools/InputPageTool.js +1 -1
  26. package/dist/components/layout/toolbar/tools/LastPageTool.js +2 -2
  27. package/dist/components/layout/toolbar/tools/NextPageTool.js +1 -1
  28. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +1 -1
  29. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +1 -1
  30. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +1 -1
  31. package/dist/components/page/AnnotationLayer.js +1 -1
  32. package/dist/components/page/CanvasLayer.js +1 -1
  33. package/dist/components/page/DualPage.js +1 -1
  34. package/dist/components/page/DualPageWithCover.js +1 -1
  35. package/dist/components/page/RPPage.js +1 -1
  36. package/dist/components/page/SinglePage.js +1 -1
  37. package/dist/components/page/TextLayer.js +1 -1
  38. package/dist/contexts/PaginationContext.js +2 -2
  39. package/dist/contexts/RenderQueueProvider.js +1 -1
  40. package/dist/contexts/SearchContext.js +1 -1
  41. package/dist/main.js +104 -103
  42. package/dist/types/main.d.ts +1 -0
  43. package/dist/types/utils/hooks/usePaginate.d.ts +2 -2
  44. package/dist/types/utils/types.d.ts +3 -0
  45. package/dist/utils/hooks/useLicense.js +1 -1
  46. package/dist/utils/hooks/useLoadPdf.js +28 -28
  47. package/dist/utils/hooks/usePaginate.js +1 -1
  48. package/dist/utils/hooks/usePresentPage.js +34 -32
  49. package/dist/utils/hooks/useScrollToPage.js +1 -1
  50. package/dist/utils/hooks/useSearch.js +1 -1
  51. package/package.json +1 -1
  52. package/dist/PaginationContext-9217cab4.js +0 -201
  53. package/dist/RPSplitter-3438b930.js +0 -109
package/dist/main.js CHANGED
@@ -1,54 +1,55 @@
1
- import { RPProvider as Dt } from "./components/RPProvider.js";
2
- import { RPPages as Ft } from "./components/RPPages.js";
1
+ import { RPProvider as ht } from "./components/RPProvider.js";
2
+ import { RPPages as wt } from "./components/RPPages.js";
3
3
  import { RPConfig as Mt } from "./components/RPConfig.js";
4
- import { RPDefaultLayout as vt } from "./components/layout/RPDefaultLayout.js";
5
- import { RPLayout as Bt } from "./components/layout/RPLayout.js";
6
- import { RPTheme as Ht } from "./components/RPTheme.js";
7
- import { default as bt } from "./components/ui/RPTooltip.js";
8
- import { UIButton as zt } from "./components/ui/Button.js";
9
- import { useDarkModeContext as Ut } from "./contexts/DarkModeContext.js";
10
- import { u as Nt } from "./PaginationContext-9217cab4.js";
11
- import { useDocumentContext as jt } from "./contexts/RPDocumentContext.js";
12
- import { useRotationContext as At } from "./contexts/RotationContext.js";
13
- import { useViewModeContext as Jt } from "./contexts/ViewModeContext.js";
14
- import { useDropFileZoneContext as Qt } from "./contexts/DropFileZoneContext.js";
15
- import { useFileDownload as Yt } from "./utils/hooks/useFileDownload.js";
16
- import { useOpenFileContext as $t } from "./contexts/FileInputContext.js";
17
- import { usePrintContext as rm } from "./contexts/PrintContext.js";
18
- import { useZoomContext as mm } from "./contexts/ZoomContext.js";
19
- import { useSearchContext as im } from "./contexts/SearchContext.js";
20
- import { useHighlightContext as lm } from "./contexts/HighlightContext.js";
21
- import { useFullScreenContext as fm } from "./contexts/FullScreenContext.js";
4
+ import { RPDefaultLayout as Zt } from "./components/layout/RPDefaultLayout.js";
5
+ import { RPLayout as Vt } from "./components/layout/RPLayout.js";
6
+ import { RPTheme as kt } from "./components/RPTheme.js";
7
+ import { default as It } from "./components/ui/RPTooltip.js";
8
+ import { UIButton as yt } from "./components/ui/Button.js";
9
+ import { useDarkModeContext as Ot } from "./contexts/DarkModeContext.js";
10
+ import { u as Et } from "./PaginationContext-15f88187.js";
11
+ import { useDocumentContext as Wt } from "./contexts/RPDocumentContext.js";
12
+ import { useRotationContext as qt } from "./contexts/RotationContext.js";
13
+ import { useViewModeContext as Gt } from "./contexts/ViewModeContext.js";
14
+ import { useDropFileZoneContext as Kt } from "./contexts/DropFileZoneContext.js";
15
+ import { useFileDownload as Xt } from "./utils/hooks/useFileDownload.js";
16
+ import { useOpenFileContext as _t } from "./contexts/FileInputContext.js";
17
+ import { usePrintContext as om } from "./contexts/PrintContext.js";
18
+ import { useZoomContext as tm } from "./contexts/ZoomContext.js";
19
+ import { useSearchContext as pm } from "./contexts/SearchContext.js";
20
+ import { useHighlightContext as em } from "./contexts/HighlightContext.js";
21
+ import { useFullScreenContext as lm } from "./contexts/FullScreenContext.js";
22
22
  import { usePageRotateContext as nm } from "./utils/hooks/usePageRotateContext.js";
23
- import { useElementPageContext as Tm } from "./contexts/ElementPageContext.js";
24
- import { SearchTool as sm } from "./components/layout/toolbar/SearchTool.js";
25
- import { ThemeSwitcherTool as gm } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
26
- import { ThumbnailTool as Rm } from "./components/layout/toolbar/tools/ThumbnailTool.js";
27
- import { FileUploadTool as dm } from "./components/layout/toolbar/tools/FileUploadTool.js";
28
- import { FileDownloadTool as Dm } from "./components/layout/toolbar/tools/FileDownloadTool.js";
29
- import { PrintTool as Fm } from "./components/layout/toolbar/tools/PrintTool.js";
30
- import { FullScreenTool as Mm } from "./components/layout/toolbar/tools/FullScreenTool.js";
31
- import { PreviousPageTool as vm } from "./components/layout/toolbar/tools/PreviousPageTool.js";
32
- import { NextPageTool as Bm } from "./components/layout/toolbar/tools/NextPageTool.js";
33
- import { InputPageTool as Hm } from "./components/layout/toolbar/tools/InputPageTool.js";
34
- import { ZoomInTool as bm } from "./components/layout/toolbar/tools/ZoomInTool.js";
35
- import { ZoomOutTool as zm } from "./components/layout/toolbar/tools/ZoomOutTool.js";
36
- import { ZoomLevelTool as Um } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
37
- import { DocumentPropertiesTool as Nm } from "./components/layout/toolbar/tools/DocumentPropertiesTool.js";
38
- import { RotateClockwiseTool as jm } from "./components/layout/toolbar/tools/RotateClockwiseTool.js";
39
- import { RotateCounterclockwiseTool as Am } from "./components/layout/toolbar/tools/RotateCounterclockwiseTool.js";
40
- import { RPHorizontalBar as Jm } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
41
- import { RPVerticalBar as Qm } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
42
- import { SelectionModeSwitcherTool as Ym } from "./components/layout/toolbar/tools/SelectionModeSwitcherTool.js";
43
- import { SinglePageTool as $m } from "./components/layout/toolbar/tools/SinglePageTool.js";
44
- import { DualPageTool as rp } from "./components/layout/toolbar/tools/DualPageTool.js";
45
- import { DualPageWithCoverTool as mp } from "./components/layout/toolbar/tools/DualPageWithCoverTool.js";
46
- import { PageScrollingTool as ip } from "./components/layout/toolbar/tools/PageScrollingTool.js";
23
+ import { useElementPageContext as um } from "./contexts/ElementPageContext.js";
24
+ import { useSelectionModeContext as sm } from "./contexts/SelectionModeContext.js";
25
+ import { SearchTool as cm } from "./components/layout/toolbar/SearchTool.js";
26
+ import { ThemeSwitcherTool as Cm } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
27
+ import { ThumbnailTool as Sm } from "./components/layout/toolbar/tools/ThumbnailTool.js";
28
+ import { FileUploadTool as hm } from "./components/layout/toolbar/tools/FileUploadTool.js";
29
+ import { FileDownloadTool as wm } from "./components/layout/toolbar/tools/FileDownloadTool.js";
30
+ import { PrintTool as Mm } from "./components/layout/toolbar/tools/PrintTool.js";
31
+ import { FullScreenTool as Zm } from "./components/layout/toolbar/tools/FullScreenTool.js";
32
+ import { PreviousPageTool as Vm } from "./components/layout/toolbar/tools/PreviousPageTool.js";
33
+ import { NextPageTool as km } from "./components/layout/toolbar/tools/NextPageTool.js";
34
+ import { InputPageTool as Im } from "./components/layout/toolbar/tools/InputPageTool.js";
35
+ import { ZoomInTool as ym } from "./components/layout/toolbar/tools/ZoomInTool.js";
36
+ import { ZoomOutTool as Om } from "./components/layout/toolbar/tools/ZoomOutTool.js";
37
+ import { ZoomLevelTool as Em } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
38
+ import { DocumentPropertiesTool as Wm } from "./components/layout/toolbar/tools/DocumentPropertiesTool.js";
39
+ import { RotateClockwiseTool as qm } from "./components/layout/toolbar/tools/RotateClockwiseTool.js";
40
+ import { RotateCounterclockwiseTool as Gm } from "./components/layout/toolbar/tools/RotateCounterclockwiseTool.js";
41
+ import { RPHorizontalBar as Km } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
42
+ import { RPVerticalBar as Xm } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
43
+ import { SelectionModeSwitcherTool as _m } from "./components/layout/toolbar/tools/SelectionModeSwitcherTool.js";
44
+ import { SinglePageTool as op } from "./components/layout/toolbar/tools/SinglePageTool.js";
45
+ import { DualPageTool as tp } from "./components/layout/toolbar/tools/DualPageTool.js";
46
+ import { DualPageWithCoverTool as pp } from "./components/layout/toolbar/tools/DualPageWithCoverTool.js";
47
+ import { PageScrollingTool as ep } from "./components/layout/toolbar/tools/PageScrollingTool.js";
47
48
  import { VerticalScrollingTool as lp } from "./components/layout/toolbar/tools/VerticalScrollingTool.js";
48
- import { HorizontalScrollingTool as fp } from "./components/layout/toolbar/tools/HorizontalScrollingTool.js";
49
- import { FirstPageTool as np } from "./components/layout/toolbar/tools/FirstPageTool.js";
50
- import { LastPageTool as Tp } from "./components/layout/toolbar/tools/LastPageTool.js";
51
- import { Locales as sp, ScrollMode as cp, SelectionMode as gp, ThemeVariables as Cp, ViewMode as Rp, ZoomLevel as Sp } from "./utils/types.js";
49
+ import { HorizontalScrollingTool as np } from "./components/layout/toolbar/tools/HorizontalScrollingTool.js";
50
+ import { FirstPageTool as up } from "./components/layout/toolbar/tools/FirstPageTool.js";
51
+ import { LastPageTool as sp } from "./components/layout/toolbar/tools/LastPageTool.js";
52
+ import { Locales as cp, ScrollMode as gp, SelectionMode as Cp, ThemeVariables as Rp, ViewMode as Sp, ZoomLevel as dp } from "./utils/types.js";
52
53
  import "react/jsx-runtime";
53
54
  import "react";
54
55
  import "./contexts/DocumentPasswordContext.js";
@@ -59,7 +60,6 @@ import "./contexts/ScrollModeContext.js";
59
60
  import "./contexts/InitialStateContext.js";
60
61
  import "./contexts/VirtualScrollContext.js";
61
62
  import "./contexts/VirtualGridContext.js";
62
- import "./contexts/SelectionModeContext.js";
63
63
  import "./contexts/ThumbnailsContext.js";
64
64
  import "./utils/hooks/useThumbnail.js";
65
65
  import "./utils/getThumbnailViewport.js";
@@ -193,7 +193,7 @@ import "./utils/zoom.js";
193
193
  import "./components/ui/LoadingIndicator.js";
194
194
  import "./components/layout/sidebar/RPSidebar.js";
195
195
  import "./components/icons/Thumbnail.js";
196
- import "./RPSplitter-3438b930.js";
196
+ import "./RPSplitter-b62772f9.js";
197
197
  import "./components/layout/sidebar/Thumbnails.js";
198
198
  import "./components/layout/sidebar/Thumbnail.js";
199
199
  import "./utils/hooks/useInfiniteScroll.js";
@@ -232,60 +232,61 @@ import "./components/layout/toolbar/SearchCloseButton.js";
232
232
  import "./components/icons/ChevronDownIcon.js";
233
233
  import "./components/layout/toolbar/ThumbnailTool.js";
234
234
  export {
235
- Nm as DocumentPropertiesTool,
236
- rp as DualPageTool,
237
- mp as DualPageWithCoverTool,
238
- Dm as FileDownloadTool,
239
- dm as FileUploadTool,
240
- np as FirstPageTool,
241
- Mm as FullScreenTool,
242
- fp as HorizontalScrollingTool,
243
- Hm as InputPageTool,
244
- Tp as LastPageTool,
245
- sp as Locales,
246
- Bm as NextPageTool,
247
- ip as PageScrollingTool,
248
- vm as PreviousPageTool,
249
- Fm as PrintTool,
250
- zt as RPButton,
235
+ Wm as DocumentPropertiesTool,
236
+ tp as DualPageTool,
237
+ pp as DualPageWithCoverTool,
238
+ wm as FileDownloadTool,
239
+ hm as FileUploadTool,
240
+ up as FirstPageTool,
241
+ Zm as FullScreenTool,
242
+ np as HorizontalScrollingTool,
243
+ Im as InputPageTool,
244
+ sp as LastPageTool,
245
+ cp as Locales,
246
+ km as NextPageTool,
247
+ ep as PageScrollingTool,
248
+ Vm as PreviousPageTool,
249
+ Mm as PrintTool,
250
+ yt as RPButton,
251
251
  Mt as RPConfig,
252
- vt as RPDefaultLayout,
253
- Jm as RPHorizontalBar,
254
- Bt as RPLayout,
255
- Ft as RPPages,
256
- Dt as RPProvider,
257
- Ht as RPTheme,
258
- bt as RPTooltip,
259
- Qm as RPVerticalBar,
260
- jm as RotateClockwiseTool,
261
- Am as RotateCounterclockwiseTool,
262
- cp as ScrollMode,
263
- sm as SearchTool,
264
- gp as SelectionMode,
265
- Ym as SelectionModeSwitcherTool,
266
- $m as SinglePageTool,
267
- gm as ThemeSwitcherTool,
268
- Cp as ThemeVariables,
269
- Rm as ThumbnailTool,
252
+ Zt as RPDefaultLayout,
253
+ Km as RPHorizontalBar,
254
+ Vt as RPLayout,
255
+ wt as RPPages,
256
+ ht as RPProvider,
257
+ kt as RPTheme,
258
+ It as RPTooltip,
259
+ Xm as RPVerticalBar,
260
+ qm as RotateClockwiseTool,
261
+ Gm as RotateCounterclockwiseTool,
262
+ gp as ScrollMode,
263
+ cm as SearchTool,
264
+ Cp as SelectionMode,
265
+ _m as SelectionModeSwitcherTool,
266
+ op as SinglePageTool,
267
+ Cm as ThemeSwitcherTool,
268
+ Rp as ThemeVariables,
269
+ Sm as ThumbnailTool,
270
270
  lp as VerticalScrollingTool,
271
- Rp as ViewMode,
272
- bm as ZoomInTool,
273
- Sp as ZoomLevel,
274
- Um as ZoomLevelTool,
275
- zm as ZoomOutTool,
276
- Ut as useDarkModeContext,
277
- jt as useDocumentContext,
278
- Qt as useDropFileZoneContext,
279
- Tm as useElementPageContext,
280
- Yt as useFileDownload,
281
- fm as useFullScreenContext,
282
- lm as useHighlightContext,
283
- $t as useOpenFileContext,
271
+ Sp as ViewMode,
272
+ ym as ZoomInTool,
273
+ dp as ZoomLevel,
274
+ Em as ZoomLevelTool,
275
+ Om as ZoomOutTool,
276
+ Ot as useDarkModeContext,
277
+ Wt as useDocumentContext,
278
+ Kt as useDropFileZoneContext,
279
+ um as useElementPageContext,
280
+ Xt as useFileDownload,
281
+ lm as useFullScreenContext,
282
+ em as useHighlightContext,
283
+ _t as useOpenFileContext,
284
284
  nm as usePageRotateContext,
285
- Nt as usePaginationContext,
286
- rm as usePrintContext,
287
- At as useRotationContext,
288
- im as useSearchContext,
289
- Jt as useViewModeContext,
290
- mm as useZoomContext
285
+ Et as usePaginationContext,
286
+ om as usePrintContext,
287
+ qt as useRotationContext,
288
+ pm as useSearchContext,
289
+ sm as useSelectionModeContext,
290
+ Gt as useViewModeContext,
291
+ tm as useZoomContext
291
292
  };
@@ -21,6 +21,7 @@ export { useHighlightContext } from './contexts/HighlightContext';
21
21
  export { useFullScreenContext } from './contexts/FullScreenContext';
22
22
  export { usePageRotateContext } from './utils/hooks/usePageRotateContext';
23
23
  export { useElementPageContext } from './contexts/ElementPageContext';
24
+ export { useSelectionModeContext } from './contexts/SelectionModeContext';
24
25
  export { type PDFDocumentProxy } from 'pdfjs-dist';
25
26
  export { SearchTool } from './components/layout/toolbar/SearchTool';
26
27
  export { ThemeSwitcherTool } from './components/layout/toolbar/tools/ThemeSwitcherTool';
@@ -1,2 +1,2 @@
1
- import { PageControl } from '../types';
2
- export declare const usePaginate: (initialPage?: number) => PageControl;
1
+ import { PageControlInternal } from '../types';
2
+ export declare const usePaginate: (initialPage?: number) => PageControlInternal;
@@ -271,6 +271,9 @@ export interface PageControl {
271
271
  nextPage: () => void;
272
272
  prevPage: () => void;
273
273
  }
274
+ export interface PageControlInternal extends PageControl {
275
+ resetPage: (page: number) => void;
276
+ }
274
277
  export interface PageControlContextType extends PageControl {
275
278
  }
276
279
  export interface ThumbnailContextType {
@@ -2,7 +2,7 @@ import { useState as E, useCallback as y, useEffect as b } from "react";
2
2
  import { LicenseType as L } from "../types.js";
3
3
  import { appConsole as c } from "../appConsole.js";
4
4
  import "../../de_DE-a553b162.js";
5
- const A = /* @__PURE__ */ new Date("2026-03-31T09:28:25.744Z"), w = `-----BEGIN PUBLIC KEY-----
5
+ const A = /* @__PURE__ */ new Date("2026-04-02T17:46:20.744Z"), w = `-----BEGIN PUBLIC KEY-----
6
6
  MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvIokvErJ0Fctu0jduSAx
7
7
  gr+5Har/VSuZLlOunS28hnlqqA+OF1apHL7RYkjBosS15yvviYdLrVWYHpHnoY4b
8
8
  HLQ9I6YX6FMB9T/VbB4xLdVdKvfi8r49aTScl5EKuSpgpPgz2VSJTfvVGcRuth/Y
@@ -1,5 +1,5 @@
1
- import { useState as a, useRef as F, useEffect as v } from "react";
2
- import * as U from "pdfjs-dist";
1
+ import { useState as d, useRef as F, useEffect as k } from "react";
2
+ import * as h from "pdfjs-dist";
3
3
  import { ErrorType as j } from "../types.js";
4
4
  import { getThumbnailViewport as z } from "../getThumbnailViewport.js";
5
5
  import { useConfigContext as _ } from "../../contexts/ConfigContext.js";
@@ -7,37 +7,37 @@ import { useDocumentPasswordContext as B } from "../../contexts/DocumentPassword
7
7
  import "../../de_DE-a553b162.js";
8
8
  import "react/jsx-runtime";
9
9
  import "../appConsole.js";
10
- const Z = (m, s, h = {}) => {
11
- const [n, q] = a(), { workerUrlAdded: S, wasmUrl: f } = _(), [D, T] = a(/* @__PURE__ */ new Map()), d = F(), [g, P] = a(0), [c, x] = a(!1), [N, O] = a(), { password: u, passwordError: A, setPasswordError: p, passwordRequired: w, setPasswordRequired: E } = B(), { onLoadError: i, onLoaded: b, onLoadProgress: R, disableAutoFetch: C, disableStream: V, rangeChunkSize: I } = h;
12
- return v(() => {
10
+ const Z = (m, s, q = {}) => {
11
+ const [n, S] = d(), { workerUrlAdded: T, wasmUrl: f } = _(), [D, x] = d(/* @__PURE__ */ new Map()), a = F(), [g, P] = d(0), [c, C] = d(!1), [N, O] = d(), { password: u, passwordError: A, setPasswordError: p, passwordRequired: w, setPasswordRequired: E } = B(), { onLoadError: i, onLoaded: b, onLoadProgress: R, disableAutoFetch: V, disableStream: I, rangeChunkSize: U } = q;
12
+ return k(() => {
13
13
  R && R(g);
14
- }, [g, R]), v(() => {
15
- if (!S || !m)
14
+ }, [g, R]), k(() => {
15
+ if (!T || !m)
16
16
  return;
17
- P(0), d.current = Date.now();
18
- const r = d.current, y = {
17
+ P(0), a.current = Date.now();
18
+ const r = a.current, v = {
19
19
  url: m,
20
20
  cMapPacked: (s == null ? void 0 : s.isCompressed) ?? !0,
21
21
  ...(s == null ? void 0 : s.url) && { cMapUrl: s.url },
22
22
  ...u && { password: u },
23
- ...C !== void 0 && { disableAutoFetch: C },
24
- ...V !== void 0 && { disableStream: V },
25
- ...I !== void 0 && { rangeChunkSize: I },
23
+ ...V !== void 0 && { disableAutoFetch: V },
24
+ ...I !== void 0 && { disableStream: I },
25
+ ...U !== void 0 && { rangeChunkSize: U },
26
26
  ...f && { wasmUrl: f },
27
- verbosity: U.VerbosityLevel.ERRORS
27
+ verbosity: h.VerbosityLevel.ERRORS
28
28
  };
29
29
  try {
30
- const e = U.getDocument(y);
30
+ const e = h.getDocument(v);
31
31
  e.onProgress = (o) => {
32
- if (r === d.current) {
33
- const { loaded: L, total: l } = o, k = l ? Math.min(100, Math.round(L / l * 100)) : 0;
34
- P(k);
32
+ if (r === a.current) {
33
+ const { loaded: y, total: l } = o, L = l ? Math.min(100, Math.round(y / l * 100)) : 0;
34
+ P(L);
35
35
  }
36
- }, x(!0);
37
- const t = e.promise.then((o) => (r === d.current && (q(o), P(100)), b && b(o), E(!1), p(""), o)).catch((o) => {
36
+ }, C(!0), S(void 0);
37
+ const t = e.promise.then((o) => (r === a.current && (S(o), P(100)), b && b(o), E(!1), p(""), o)).catch((o) => {
38
38
  o instanceof Error && o.name === "PasswordException" ? (E(!0), p(o.message || "Password required")) : o instanceof Error && o.name === "InvalidPDFException" && u ? (E(!0), p("Incorrect password")) : i && i(o);
39
39
  }).finally(() => {
40
- x(!1);
40
+ C(!1);
41
41
  });
42
42
  return () => {
43
43
  t.finally(() => {
@@ -47,29 +47,29 @@ const Z = (m, s, h = {}) => {
47
47
  } catch (e) {
48
48
  O(j.NOT_SUPPORTED), i && i(e);
49
49
  }
50
- }, [m, S, f, u, i, b]), v(() => {
50
+ }, [m, T, f, u, i, b]), k(() => {
51
51
  if (w)
52
52
  return;
53
53
  const r = /* @__PURE__ */ new Map();
54
54
  if (!n || c) {
55
- T(r);
55
+ x(r);
56
56
  return;
57
57
  }
58
- const y = n.numPages, e = [];
59
- for (let t = 1; t <= y; t++) {
58
+ const v = n.numPages, e = [];
59
+ for (let t = 1; t <= v; t++) {
60
60
  const o = n.getPage(t);
61
61
  e.push(o);
62
62
  }
63
63
  Promise.all(e).then((t) => {
64
64
  t.map((o) => {
65
- const { thumbnailViewport: L, scale: l } = z(o), k = o.getViewport();
65
+ const { thumbnailViewport: y, scale: l } = z(o), L = o.getViewport();
66
66
  r.set(o.pageNumber, {
67
67
  page: o,
68
- thumbnailViewport: L,
68
+ thumbnailViewport: y,
69
69
  thumbnailScale: l,
70
- defaultRotation: k.rotation
70
+ defaultRotation: L.rotation
71
71
  });
72
- }), T(r);
72
+ }), x(r);
73
73
  });
74
74
  }, [n, c, w]), {
75
75
  pdf: n,
@@ -1,6 +1,6 @@
1
1
  import "react";
2
2
  import "../types.js";
3
- import { b as I } from "../../PaginationContext-9217cab4.js";
3
+ import { b as I } from "../../PaginationContext-15f88187.js";
4
4
  import "../../contexts/ViewModeContext.js";
5
5
  import "../../contexts/ScrollModeContext.js";
6
6
  import "./useDebounce.js";
@@ -1,11 +1,11 @@
1
- import { useRef as x, useState as C, useMemo as D, useEffect as X, useCallback as F } from "react";
2
- import { useLayoutContainer as N } from "../../contexts/LayoutContainerContext.js";
3
- import { useDimensionPagesContext as v } from "../../contexts/DimensionPagesContext.js";
4
- import { getGridDimension as A, getPositionFromPage as H } from "../calculatePage.js";
5
- import { u as _ } from "../../PaginationContext-9217cab4.js";
6
- import { useDebounce as q } from "./useDebounce.js";
7
- import { useSmoothScrollContext as G } from "../../contexts/SmoothScrollContext.js";
8
- import { ViewMode as M } from "../types.js";
1
+ import { useRef as Y, useState as C, useMemo as D, useEffect as E, useCallback as N } from "react";
2
+ import { useLayoutContainer as v } from "../../contexts/LayoutContainerContext.js";
3
+ import { useDimensionPagesContext as A } from "../../contexts/DimensionPagesContext.js";
4
+ import { getGridDimension as H, getPositionFromPage as _ } from "../calculatePage.js";
5
+ import { u as q } from "../../PaginationContext-15f88187.js";
6
+ import { useDebounce as G } from "./useDebounce.js";
7
+ import { useSmoothScrollContext as M } from "../../contexts/SmoothScrollContext.js";
8
+ import { ViewMode as V } from "../types.js";
9
9
  import "react/jsx-runtime";
10
10
  import "../appConsole.js";
11
11
  import "../../contexts/RPDocumentContext.js";
@@ -32,15 +32,17 @@ import "../../contexts/VirtualScrollContext.js";
32
32
  import "../../contexts/VirtualGridContext.js";
33
33
  import "../smoothScrollTo.js";
34
34
  import "../getScrollDistance.js";
35
- const Wt = (f, Y, n, W) => {
36
- const P = x(), { contentRef: E } = N(), { heights: h, widths: l } = v(), { setFocusedPage: b } = _(), [S, R] = C([]), { targetScrollPage: L } = G(), i = q(S, 0, 500), I = D(() => {
37
- const c = W === M.DUAL_PAGE_WITH_COVER, { rowsHeight: r, columnsWidth: o } = A({ heights: h, widths: l }, f, c);
35
+ const bt = (f, R, e, W) => {
36
+ const P = Y(), { contentRef: S } = v(), { heights: h, widths: g } = A(), { setFocusedPage: b } = q(), I = Y(b);
37
+ I.current = b;
38
+ const [F, x] = C([]), { targetScrollPage: l } = M(), i = G(F, 0, 500), X = D(() => {
39
+ const c = W === V.DUAL_PAGE_WITH_COVER, { rowsHeight: r, columnsWidth: o } = H({ heights: h, widths: g }, f, c);
38
40
  return h.map((m, t) => {
39
- const e = l[t], s = H(t + 1, f, c), p = o.slice(0, s.columnIndex).reduce((u, a) => u + a, 0), d = r.slice(0, s.rowIndex).reduce((u, a) => u + a, 0), T = p + e, w = d + m;
41
+ const n = g[t], s = _(t + 1, f, c), p = o.slice(0, s.columnIndex).reduce((u, a) => u + a, 0), d = r.slice(0, s.rowIndex).reduce((u, a) => u + a, 0), T = p + n, w = d + m;
40
42
  return {
41
43
  pageNumber: t + 1,
42
44
  ...s,
43
- width: e,
45
+ width: n,
44
46
  height: m,
45
47
  startX: p,
46
48
  startY: d,
@@ -48,14 +50,14 @@ const Wt = (f, Y, n, W) => {
48
50
  endY: w
49
51
  };
50
52
  });
51
- }, [h, l, f, Y, W]);
52
- X(() => {
53
+ }, [h, g, f, R, W]);
54
+ E(() => {
53
55
  var r;
54
- i.length > 0 && !L.current && b(i[0].pageNumber), ((r = i[0]) == null ? void 0 : r.ratio) && i.some((o) => o.pageNumber === L.current) && setTimeout(() => {
55
- L.current = void 0;
56
+ i.length > 0 && !l.current && I.current(i[0].pageNumber), ((r = i[0]) == null ? void 0 : r.ratio) && i.some((o) => o.pageNumber === l.current) && setTimeout(() => {
57
+ l.current = void 0;
56
58
  }, 500);
57
- }, [i, b]);
58
- const g = F(
59
+ }, [i]);
60
+ const L = N(
59
61
  (c) => {
60
62
  P.current && cancelAnimationFrame(P.current), P.current = requestAnimationFrame(() => {
61
63
  const r = c.target, o = {
@@ -63,28 +65,28 @@ const Wt = (f, Y, n, W) => {
63
65
  startLeft: r.scrollLeft,
64
66
  endTop: r.scrollTop + r.clientHeight,
65
67
  endLeft: r.scrollLeft + r.clientWidth
66
- }, m = I.filter((t) => {
67
- const e = t.endX >= o.startLeft && t.endY >= o.startTop, s = t.startX <= o.endLeft && t.startY <= o.endTop;
68
- return e && s;
68
+ }, m = X.filter((t) => {
69
+ const n = t.endX >= o.startLeft && t.endY >= o.startTop, s = t.startX <= o.endLeft && t.startY <= o.endTop;
70
+ return n && s;
69
71
  }).map((t) => {
70
- const e = o.startLeft > t.startX ? o.startLeft : t.startX, s = o.startTop > t.startY ? o.startTop : t.startY, p = o.endLeft < t.endX ? o.endLeft : t.endX, d = o.endTop < t.endY ? o.endTop : t.endY, T = p - e, w = d - s, a = +(T * w / (t.width * t.height) * 100).toFixed(2);
72
+ const n = o.startLeft > t.startX ? o.startLeft : t.startX, s = o.startTop > t.startY ? o.startTop : t.startY, p = o.endLeft < t.endX ? o.endLeft : t.endX, d = o.endTop < t.endY ? o.endTop : t.endY, T = p - n, w = d - s, a = +(T * w / (t.width * t.height) * 100).toFixed(2);
71
73
  return {
72
74
  pageNumber: t.pageNumber,
73
75
  ratio: a
74
76
  };
75
- }).sort((t, e) => e.ratio - t.ratio);
76
- R(m);
77
+ }).sort((t, n) => n.ratio - t.ratio);
78
+ x(m);
77
79
  });
78
80
  },
79
- [E, I]
81
+ [S, X]
80
82
  );
81
- X(() => {
82
- if (n)
83
- return n == null || n.addEventListener("scroll", g), () => {
84
- n == null || n.removeEventListener("scroll", g);
83
+ E(() => {
84
+ if (e)
85
+ return e == null || e.addEventListener("scroll", L), () => {
86
+ e == null || e.removeEventListener("scroll", L);
85
87
  };
86
- }, [n, g]);
88
+ }, [e, L]);
87
89
  };
88
90
  export {
89
- Wt as usePresentPage
91
+ bt as usePresentPage
90
92
  };
@@ -1,6 +1,6 @@
1
1
  import "react";
2
2
  import "../../contexts/ScrollModeContext.js";
3
- import { a as G } from "../../PaginationContext-9217cab4.js";
3
+ import { a as G } from "../../PaginationContext-15f88187.js";
4
4
  import "../../contexts/ViewModeContext.js";
5
5
  import "../types.js";
6
6
  import "../../contexts/VirtualScrollContext.js";
@@ -5,7 +5,7 @@ import { useVirtualScrollContext as st } from "../../contexts/VirtualScrollConte
5
5
  import { useScrollModeContext as ct } from "../../contexts/ScrollModeContext.js";
6
6
  import { useDocumentContext as it } from "../../contexts/RPDocumentContext.js";
7
7
  import { useZoomContext as at } from "../../contexts/ZoomContext.js";
8
- import { u as mt } from "../../PaginationContext-9217cab4.js";
8
+ import { u as mt } from "../../PaginationContext-15f88187.js";
9
9
  import { useViewModeContext as ut } from "../../contexts/ViewModeContext.js";
10
10
  import { useDimensionPagesContext as pt } from "../../contexts/DimensionPagesContext.js";
11
11
  import { useLayoutContainer as lt } from "../../contexts/LayoutContainerContext.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-pdf-kit/viewer",
3
- "version": "2.3.0-beta.2",
3
+ "version": "2.3.0-beta.4",
4
4
  "private": false,
5
5
  "description": "A react-pdf-viewer component for React and Next.js. Suitable for react-pdf document.",
6
6
  "keywords": [