@pdf-viewer/react 1.9.1-rc.2 → 1.9.1-rc.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 (69) hide show
  1. package/dist/ToolbarLayout.module-20b830dd.js +3345 -0
  2. package/dist/ZoomTool.module-6c5eabbb.js +12 -0
  3. package/dist/assets/ToolbarLayout.css +1 -1
  4. package/dist/assets/ZoomTool.css +1 -0
  5. package/dist/components/RPController.js +56 -52
  6. package/dist/components/RPPages.js +8 -2
  7. package/dist/components/layout/LayoutContainer.js +7 -2
  8. package/dist/components/layout/RPDefaultLayout.js +1 -1
  9. package/dist/components/layout/RPLayout.js +8 -3
  10. package/dist/components/layout/sidebar/RPSidebar.js +1 -1
  11. package/dist/components/layout/sidebar/Thumbnail.js +7 -2
  12. package/dist/components/layout/sidebar/Thumbnails.js +2 -2
  13. package/dist/components/layout/toolbar/DocumentDialog.js +7 -2
  14. package/dist/components/layout/toolbar/FileDownloadTool.js +1 -1
  15. package/dist/components/layout/toolbar/MostPageTool.js +7 -2
  16. package/dist/components/layout/toolbar/OtherTool.js +2 -2
  17. package/dist/components/layout/toolbar/Paginate.js +2 -2
  18. package/dist/components/layout/toolbar/PrintTool.js +2 -2
  19. package/dist/components/layout/toolbar/RPToolbar.js +3 -2
  20. package/dist/components/layout/toolbar/RPToolbarEnd.js +1 -1
  21. package/dist/components/layout/toolbar/SearchResultNavigator.js +1 -1
  22. package/dist/components/layout/toolbar/SearchTool.js +7 -2
  23. package/dist/components/layout/toolbar/ThumbnailTool.js +1 -1
  24. package/dist/components/layout/toolbar/ToolbarCustom.js +12 -7
  25. package/dist/components/layout/toolbar/ToolbarDefault.js +11 -6
  26. package/dist/components/layout/toolbar/ZoomTool.js +116 -22
  27. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +1 -1
  28. package/dist/components/layout/toolbar/tools/InputPageTool.js +1 -1
  29. package/dist/components/layout/toolbar/tools/NextPageTool.js +8 -3
  30. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +1 -1
  31. package/dist/components/layout/toolbar/tools/PrintTool.js +1 -1
  32. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +1 -1
  33. package/dist/components/layout/toolbar/tools/ZoomInTool.js +10 -10
  34. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +7 -6
  35. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +9 -9
  36. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +19 -13
  37. package/dist/components/page/AnnotationLayer.js +7 -2
  38. package/dist/components/page/CanvasLayer.js +7 -2
  39. package/dist/components/page/CustomElement.js +20 -4
  40. package/dist/components/page/DualPage.js +1 -1
  41. package/dist/components/page/RPPage.js +8 -2
  42. package/dist/components/page/SinglePage.js +1 -1
  43. package/dist/components/page/TextHighlightLayer.js +7 -2
  44. package/dist/components/page/TextLayer.js +7 -2
  45. package/dist/components/ui/LoadingIndicator.js +1 -1
  46. package/dist/contexts/DimensionPagesContext.js +40 -9
  47. package/dist/contexts/ElementPageContext.js +74 -10
  48. package/dist/contexts/GlobalCurrentPage.js +16 -0
  49. package/dist/contexts/PaginationContext.js +5 -4
  50. package/dist/contexts/PrintContext.js +1 -1
  51. package/dist/contexts/RenderQueueProvider.js +1 -1
  52. package/dist/contexts/SearchContext.js +3 -3
  53. package/dist/contexts/ThumbnailsContext.js +1 -1
  54. package/dist/contexts/ZoomContext.js +73 -15
  55. package/dist/main.js +64 -62
  56. package/dist/types/contexts/GlobalCurrentPage.d.ts +11 -0
  57. package/dist/types/utils/types.d.ts +1 -1
  58. package/dist/utils/hooks/useFileDownload.js +7 -2
  59. package/dist/utils/hooks/useLicense.js +1 -1
  60. package/dist/utils/hooks/usePaginate.js +7 -2
  61. package/dist/utils/hooks/usePinch.js +77 -4
  62. package/dist/utils/hooks/usePresentPage.js +7 -2
  63. package/dist/utils/hooks/usePrint.js +7 -2
  64. package/dist/utils/hooks/useScrollToPage.js +7 -2
  65. package/dist/utils/hooks/useSearch.js +7 -2
  66. package/dist/utils/hooks/useThumbnail.js +7 -2
  67. package/dist/utils/hooks/useVirtualReactWindow.js +7 -2
  68. package/package.json +1 -1
  69. package/dist/ToolbarLayout.module-c973eb9c.js +0 -3675
@@ -1,17 +1,75 @@
1
- import "react/jsx-runtime";
2
- import "react";
3
- import "../utils/types.js";
4
- import "../utils/appConsole.js";
5
- import "./InitialStateContext.js";
6
- import "./RPDocumentContext.js";
7
- import "../utils/constants.js";
8
- import "../utils/getZoomLevel.js";
9
- import "./LayoutContainerContext.js";
10
- import "./ViewModeContext.js";
11
- import "./RotationContext.js";
12
- import { v, Z as C, d as f } from "../ToolbarLayout.module-c973eb9c.js";
1
+ import { jsx as N } from "react/jsx-runtime";
2
+ import { createContext as S, useContext as E, useState as u, useRef as G, useEffect as a, useCallback as x, useMemo as C } from "react";
3
+ import { ZoomLevel as R } from "../utils/types.js";
4
+ import { appConsole as A } from "../utils/appConsole.js";
5
+ import { useInitialStateContext as I } from "./InitialStateContext.js";
6
+ import { useDocumentContext as M } from "./RPDocumentContext.js";
7
+ import { PAGE_PADDING as L } from "../utils/constants.js";
8
+ import { getZoomLevel as O } from "../utils/getZoomLevel.js";
9
+ import { useLayoutContainer as J } from "./LayoutContainerContext.js";
10
+ import { useViewModeContext as _ } from "./ViewModeContext.js";
11
+ import { useRotationContext as j } from "./RotationContext.js";
12
+ import { useGlobalCurrentPage as F } from "./GlobalCurrentPage.js";
13
+ const w = S({
14
+ zoomLevel: 100,
15
+ currentZoom: 1,
16
+ setZoomLevel: () => {
17
+ }
18
+ }), ne = () => {
19
+ const c = E(w);
20
+ return typeof c.currentZoom != "number" && A.warn("Please use this hooks inside children component of RPProvider"), c;
21
+ }, re = ({ children: c }) => {
22
+ const { initialScale: W = R.PAGE_FIT } = I(), [r, f] = u(W), { pages: l } = M(), { pagesRef: o } = J(), { viewMode: p } = _(), [h, b] = u((o == null ? void 0 : o.clientWidth) || 0), { rotate: d } = j(), [n, V] = u(null), g = G(null), { currentPage: v } = F(), [P, y] = u(v);
23
+ a(() => {
24
+ let e = l.get(P);
25
+ e || (e = l.get(1));
26
+ const t = e == null ? void 0 : e.page.getViewport({
27
+ scale: 1,
28
+ rotation: e.defaultRotation + d
29
+ });
30
+ t && JSON.stringify(t) !== JSON.stringify(g.current) && (g.current = t, V(t));
31
+ }, [l, d, P]);
32
+ const Z = x(() => {
33
+ if (!n)
34
+ return null;
35
+ const e = ((n == null ? void 0 : n.width) || 0) + 2 * L, t = ((n == null ? void 0 : n.height) || 0) + 2 * L, i = (o == null ? void 0 : o.clientWidth) || 0, s = (o == null ? void 0 : o.clientHeight) || 0;
36
+ return { pageWidth: e, pageHeight: t, clientWidth: i, clientHeight: s };
37
+ }, [n]), m = C(() => {
38
+ const e = Z();
39
+ if (!h || !e)
40
+ return 0;
41
+ if (typeof r == "number")
42
+ return r / 100;
43
+ const { clientWidth: t, clientHeight: i, pageWidth: s, pageHeight: H } = e;
44
+ return O(r, t, i, s, H, p) / 100;
45
+ }, [r, h, Z, p]);
46
+ a(() => {
47
+ y(v);
48
+ }, [r]), a(() => {
49
+ const e = (i) => {
50
+ i.forEach((s) => {
51
+ b(s.contentRect.width);
52
+ });
53
+ }, t = new ResizeObserver(e);
54
+ return o && t.observe(o), () => {
55
+ t.disconnect();
56
+ };
57
+ }, [o]);
58
+ const z = x(
59
+ (e) => {
60
+ let t = 0;
61
+ typeof e == "function" ? t = e(m * 100) : t = e, t && f(t);
62
+ },
63
+ [f, m]
64
+ ), D = C(() => ({
65
+ zoomLevel: r,
66
+ currentZoom: m,
67
+ setZoomLevel: z
68
+ }), [m, r]);
69
+ return /* @__PURE__ */ N(w.Provider, { value: D, children: c });
70
+ };
13
71
  export {
14
- v as ZoomContext,
15
- C as ZoomProvider,
16
- f as useZoomContext
72
+ w as ZoomContext,
73
+ re as ZoomProvider,
74
+ ne as useZoomContext
17
75
  };
package/dist/main.js CHANGED
@@ -1,78 +1,80 @@
1
1
  import { RPProvider as r } from "./components/RPProvider.js";
2
- import { a as x, R as m, S as l, f as p, b as a, u as f, c as n, e as s, d as u } from "./ToolbarLayout.module-c973eb9c.js";
3
- import { RPConfig as P } from "./components/RPConfig.js";
4
- import { RPLayout as C } from "./components/layout/RPLayout.js";
5
- import { RPController as c } from "./components/RPController.js";
6
- import { RPTheme as g } from "./components/RPTheme.js";
7
- import { RPDropFileZone as F } from "./components/RPDropFileZone.js";
8
- import { useDarkModeContext as S } from "./contexts/DarkModeContext.js";
9
- import { useDocumentContext as w } from "./contexts/RPDocumentContext.js";
10
- import { useRotationContext as v } from "./contexts/RotationContext.js";
11
- import { useViewModeContext as V } from "./contexts/ViewModeContext.js";
12
- import { useDropFileZoneContext as y } from "./contexts/DropFileZoneContext.js";
13
- import { useOpenFileContext as H } from "./contexts/FileInputContext.js";
2
+ import { a as x, R as m, S as l, b as p, u as f, c as a, d as n } from "./ToolbarLayout.module-20b830dd.js";
3
+ import { RPConfig as u } from "./components/RPConfig.js";
4
+ import { RPLayout as P } from "./components/layout/RPLayout.js";
5
+ import { RPController as C } from "./components/RPController.js";
6
+ import { RPTheme as c } from "./components/RPTheme.js";
7
+ import { RPDropFileZone as g } from "./components/RPDropFileZone.js";
8
+ import { useDarkModeContext as F } from "./contexts/DarkModeContext.js";
9
+ import { useDocumentContext as S } from "./contexts/RPDocumentContext.js";
10
+ import { useRotationContext as w } from "./contexts/RotationContext.js";
11
+ import { useViewModeContext as v } from "./contexts/ViewModeContext.js";
12
+ import { useDropFileZoneContext as V } from "./contexts/DropFileZoneContext.js";
13
+ import { useOpenFileContext as y } from "./contexts/FileInputContext.js";
14
+ import { useZoomContext as H } from "./contexts/ZoomContext.js";
14
15
  import { useHighlightContext as O } from "./contexts/HighlightContext.js";
15
16
  import { usePdfProperties as z } from "./utils/hooks/usePdfProperties.js";
16
17
  import { useFullScreenContext as N } from "./contexts/FullScreenContext.js";
17
18
  import { usePageRotateContext as j } from "./utils/hooks/usePageRotateContext.js";
18
- import { ThemeSwitcherTool as A } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
19
- import { ThumbnailTool as J } from "./components/layout/toolbar/tools/ThumbnailTool.js";
20
- import { FileUploadTool as Q } from "./components/layout/toolbar/tools/FileUploadTool.js";
21
- import { FileDownloadTool as X } from "./components/layout/toolbar/tools/FileDownloadTool.js";
22
- import { PrintTool as _ } from "./components/layout/toolbar/tools/PrintTool.js";
23
- import { FullScreenTool as oo } from "./components/layout/toolbar/tools/FullScreenTool.js";
24
- import { PreviousPageTool as ro } from "./components/layout/toolbar/tools/PreviousPageTool.js";
25
- import { NextPageTool as xo } from "./components/layout/toolbar/tools/NextPageTool.js";
26
- import { InputPageTool as lo } from "./components/layout/toolbar/tools/InputPageTool.js";
27
- import { ZoomInTool as ao } from "./components/layout/toolbar/tools/ZoomInTool.js";
28
- import { ZoomOutTool as no } from "./components/layout/toolbar/tools/ZoomOutTool.js";
29
- import { ZoomLevelTool as uo } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
30
- import { RPHorizontalBar as Po } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
31
- import { RPVerticalBar as Co } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
32
- import { Locales as co, ScrollMode as go, ThemeVariables as ho, ViewMode as Fo, ZoomLevel as Do } from "./utils/types.js";
19
+ import { useElementPageContext as A } from "./contexts/ElementPageContext.js";
20
+ import { ThemeSwitcherTool as J } from "./components/layout/toolbar/tools/ThemeSwitcherTool.js";
21
+ import { ThumbnailTool as Q } from "./components/layout/toolbar/tools/ThumbnailTool.js";
22
+ import { FileUploadTool as X } from "./components/layout/toolbar/tools/FileUploadTool.js";
23
+ import { FileDownloadTool as _ } from "./components/layout/toolbar/tools/FileDownloadTool.js";
24
+ import { PrintTool as oo } from "./components/layout/toolbar/tools/PrintTool.js";
25
+ import { FullScreenTool as ro } from "./components/layout/toolbar/tools/FullScreenTool.js";
26
+ import { PreviousPageTool as xo } from "./components/layout/toolbar/tools/PreviousPageTool.js";
27
+ import { NextPageTool as lo } from "./components/layout/toolbar/tools/NextPageTool.js";
28
+ import { InputPageTool as fo } from "./components/layout/toolbar/tools/InputPageTool.js";
29
+ import { ZoomInTool as no } from "./components/layout/toolbar/tools/ZoomInTool.js";
30
+ import { ZoomOutTool as uo } from "./components/layout/toolbar/tools/ZoomOutTool.js";
31
+ import { ZoomLevelTool as Po } from "./components/layout/toolbar/tools/ZoomLevelTool.js";
32
+ import { RPHorizontalBar as Co } from "./components/layout/toolbar/tools/defaults/RPHorizontalBar.js";
33
+ import { RPVerticalBar as co } from "./components/layout/toolbar/tools/defaults/RPVerticalBar.js";
34
+ import { Locales as ho, ScrollMode as Fo, ThemeVariables as Do, ViewMode as So, ZoomLevel as Zo } from "./utils/types.js";
33
35
  export {
34
- X as FileDownloadTool,
35
- Q as FileUploadTool,
36
- oo as FullScreenTool,
37
- lo as InputPageTool,
38
- co as Locales,
39
- xo as NextPageTool,
40
- ro as PreviousPageTool,
41
- _ as PrintTool,
42
- P as RPConfig,
43
- c as RPController,
36
+ _ as FileDownloadTool,
37
+ X as FileUploadTool,
38
+ ro as FullScreenTool,
39
+ fo as InputPageTool,
40
+ ho as Locales,
41
+ lo as NextPageTool,
42
+ xo as PreviousPageTool,
43
+ oo as PrintTool,
44
+ u as RPConfig,
45
+ C as RPController,
44
46
  x as RPDefaultLayout,
45
- F as RPDropFileZone,
46
- Po as RPHorizontalBar,
47
- C as RPLayout,
47
+ g as RPDropFileZone,
48
+ Co as RPHorizontalBar,
49
+ P as RPLayout,
48
50
  m as RPPages,
49
51
  r as RPProvider,
50
- g as RPTheme,
51
- Co as RPVerticalBar,
52
- go as ScrollMode,
52
+ c as RPTheme,
53
+ co as RPVerticalBar,
54
+ Fo as ScrollMode,
53
55
  l as SearchTool,
54
- A as ThemeSwitcherTool,
55
- ho as ThemeVariables,
56
- J as ThumbnailTool,
57
- Fo as ViewMode,
58
- ao as ZoomInTool,
59
- Do as ZoomLevel,
60
- uo as ZoomLevelTool,
61
- no as ZoomOutTool,
62
- S as useDarkModeContext,
63
- w as useDocumentContext,
64
- y as useDropFileZoneContext,
65
- p as useElementPageContext,
66
- a as useFileDownload,
56
+ J as ThemeSwitcherTool,
57
+ Do as ThemeVariables,
58
+ Q as ThumbnailTool,
59
+ So as ViewMode,
60
+ no as ZoomInTool,
61
+ Zo as ZoomLevel,
62
+ Po as ZoomLevelTool,
63
+ uo as ZoomOutTool,
64
+ F as useDarkModeContext,
65
+ S as useDocumentContext,
66
+ V as useDropFileZoneContext,
67
+ A as useElementPageContext,
68
+ p as useFileDownload,
67
69
  N as useFullScreenContext,
68
70
  O as useHighlightContext,
69
- H as useOpenFileContext,
71
+ y as useOpenFileContext,
70
72
  j as usePageRotateContext,
71
73
  f as usePaginationContext,
72
74
  z as usePdfProperties,
73
- n as usePrintContext,
74
- v as useRotationContext,
75
- s as useSearchContext,
76
- V as useViewModeContext,
77
- u as useZoomContext
75
+ a as usePrintContext,
76
+ w as useRotationContext,
77
+ n as useSearchContext,
78
+ v as useViewModeContext,
79
+ H as useZoomContext
78
80
  };
@@ -0,0 +1,11 @@
1
+ export declare const GlobalCurrentPage: import('react').Context<{
2
+ currentPage: number;
3
+ setCurrentPage: (page: number) => void;
4
+ }>;
5
+ export declare const useGlobalCurrentPage: () => {
6
+ currentPage: number;
7
+ setCurrentPage: (page: number) => void;
8
+ };
9
+ export declare const GlobalCurrentPageProvider: ({ children }: {
10
+ children: React.ReactNode;
11
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -493,7 +493,7 @@ export interface DimensionPagesContextType {
493
493
  export interface ZoomContextType {
494
494
  zoomLevel: number | ZoomLevel;
495
495
  currentZoom: number;
496
- setZoomLevel: React.Dispatch<React.SetStateAction<number | ZoomLevel>>;
496
+ setZoomLevel: (callback: number | ZoomLevel | ((prev: number) => number | ZoomLevel)) => void;
497
497
  }
498
498
  export type ZoomProps = Omit<ZoomContextType, 'currentZoom'>;
499
499
  export type InitialStateContextType = {
@@ -2,10 +2,11 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { b as X } from "../../ToolbarLayout.module-c973eb9c.js";
5
+ import { b as oo } from "../../ToolbarLayout.module-20b830dd.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
9
+ import "../../contexts/ZoomContext.js";
9
10
  import "../../contexts/ViewModeContext.js";
10
11
  import "../../contexts/ScrollModeContext.js";
11
12
  import "../../contexts/VirtualScrollContext.js";
@@ -16,12 +17,15 @@ import "../../contexts/FullScreenContext.js";
16
17
  import "../../contexts/FileInputContext.js";
17
18
  import "../../contexts/DropFileZoneContext.js";
18
19
  import "../../contexts/LayoutContainerContext.js";
20
+ import "../../contexts/DimensionPagesContext.js";
19
21
  import "../../contexts/LocalizationContext.js";
20
22
  import "../../contexts/HighlightContext.js";
21
23
  import "../../contexts/LicenseContext.js";
22
24
  import "../../contexts/DownloadContext.js";
23
25
  import "../../contexts/SmoothScrollContext.js";
26
+ import "../../contexts/ElementPageContext.js";
24
27
  import "../../contexts/PagesRotateContext.js";
28
+ import "../../contexts/GlobalCurrentPage.js";
25
29
  import "../../contexts/LoaderContext.js";
26
30
  import "../../contexts/ToolComponentContext.js";
27
31
  import "../../contexts/IconToolContext.js";
@@ -41,11 +45,12 @@ import "../../components/icons/LoaderIcon.js";
41
45
  import "../../contexts/IconContext.js";
42
46
  import "../../components/ui/RPTooltip.js";
43
47
  import "../../components/ui/DropDown.js";
48
+ import "../../ZoomTool.module-6c5eabbb.js";
44
49
  import "../../components/layout/toolbar/MenuItem.js";
45
50
  import "../../components/layout/toolbar/MenuSeparator.js";
46
51
  import "../dateFormatter.js";
47
52
  import "../../components/layout/toolbar/PropertyItem.js";
48
53
  import "../../components/layout/toolbar/RotateTool.js";
49
54
  export {
50
- X as useFileDownload
55
+ oo as useFileDownload
51
56
  };
@@ -1,6 +1,6 @@
1
1
  import { useState as E, useCallback as h, useEffect as A } from "react";
2
2
  import { appConsole as l } from "../appConsole.js";
3
- const b = /* @__PURE__ */ new Date("2025-09-30T03:05:45.489Z"), d = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
3
+ const b = /* @__PURE__ */ new Date("2025-10-01T01:46:29.653Z"), d = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
4
4
  invalidLicense: `You are currently using without a valid license. ${d}`,
5
5
  mismatchedDomain: `Your license key is not valid for the current domain / IP. ${d}`,
6
6
  expired: `Your license key has expired. ${d}`,
@@ -1,12 +1,13 @@
1
1
  import "react";
2
2
  import "../types.js";
3
- import { y as Z } from "../../ToolbarLayout.module-c973eb9c.js";
3
+ import { r as tr } from "../../ToolbarLayout.module-20b830dd.js";
4
4
  import "react/jsx-runtime";
5
5
  import "../../contexts/RPDocumentContext.js";
6
6
  import "../../contexts/DocumentPasswordContext.js";
7
7
  import "../../contexts/DarkModeContext.js";
8
8
  import "../../contexts/RotationContext.js";
9
9
  import "../../contexts/LayerContext.js";
10
+ import "../../contexts/ZoomContext.js";
10
11
  import "../../contexts/ViewModeContext.js";
11
12
  import "../../contexts/ScrollModeContext.js";
12
13
  import "../../contexts/VirtualScrollContext.js";
@@ -17,12 +18,15 @@ import "../../contexts/FullScreenContext.js";
17
18
  import "../../contexts/FileInputContext.js";
18
19
  import "../../contexts/DropFileZoneContext.js";
19
20
  import "../../contexts/LayoutContainerContext.js";
21
+ import "../../contexts/DimensionPagesContext.js";
20
22
  import "../../contexts/LocalizationContext.js";
21
23
  import "../../contexts/HighlightContext.js";
22
24
  import "../../contexts/LicenseContext.js";
23
25
  import "../../contexts/DownloadContext.js";
24
26
  import "../../contexts/SmoothScrollContext.js";
27
+ import "../../contexts/ElementPageContext.js";
25
28
  import "../../contexts/PagesRotateContext.js";
29
+ import "../../contexts/GlobalCurrentPage.js";
26
30
  import "../../contexts/LoaderContext.js";
27
31
  import "../../contexts/ToolComponentContext.js";
28
32
  import "../../contexts/IconToolContext.js";
@@ -42,6 +46,7 @@ import "../../components/icons/LoaderIcon.js";
42
46
  import "../../contexts/IconContext.js";
43
47
  import "../../components/ui/RPTooltip.js";
44
48
  import "../../components/ui/DropDown.js";
49
+ import "../../ZoomTool.module-6c5eabbb.js";
45
50
  import "../../components/layout/toolbar/MenuItem.js";
46
51
  import "../../components/layout/toolbar/MenuSeparator.js";
47
52
  import "../dateFormatter.js";
@@ -49,5 +54,5 @@ import "../../components/layout/toolbar/PropertyItem.js";
49
54
  import "../../components/layout/toolbar/RotateTool.js";
50
55
  import "./useDebounce.js";
51
56
  export {
52
- Z as usePaginate
57
+ tr as usePaginate
53
58
  };
@@ -1,6 +1,79 @@
1
- import "react";
2
- import "./useDebounce.js";
3
- import { _ as p } from "../../ToolbarLayout.module-c973eb9c.js";
1
+ import { useState as L, useRef as T, useCallback as r, useEffect as u } from "react";
2
+ import { useDebounce as g } from "./useDebounce.js";
3
+ import { useZoomContext as A } from "../../contexts/ZoomContext.js";
4
+ const I = (n) => {
5
+ const { currentZoom: p, setZoomLevel: w } = A(), [D, d] = L(0), a = g(D, 100), [o, b] = L(!1), c = T(null), i = r((e) => {
6
+ d(e ? (t) => t + 3 : (t) => t - 3);
7
+ }, []), f = r(
8
+ (e) => {
9
+ if (!e.ctrlKey)
10
+ return;
11
+ e.preventDefault();
12
+ const t = e.deltaY < 0;
13
+ i(t);
14
+ },
15
+ [i]
16
+ );
17
+ u(() => {
18
+ if (a) {
19
+ const e = Math.round(p * 100 + a);
20
+ d(0), w(e > 25 ? e : 25);
21
+ }
22
+ }, [a]);
23
+ const E = (e, t) => {
24
+ const s = e.clientX - t.clientX, l = e.clientY - t.clientY;
25
+ return Math.sqrt(s * s + l * l);
26
+ }, h = r(
27
+ (e) => {
28
+ if (!o || e.touches.length !== 2)
29
+ return;
30
+ const t = E(e.touches[0], e.touches[1]);
31
+ c.current = t, e.preventDefault();
32
+ },
33
+ [o]
34
+ ), v = r(() => {
35
+ c.current = null;
36
+ }, []), m = r(
37
+ (e) => {
38
+ if (!o || e.touches.length !== 2 || c.current === null)
39
+ return;
40
+ const t = E(e.touches[0], e.touches[1]), s = t - c.current, l = Math.abs(s) > 5, S = s > 0;
41
+ l && (i(S), c.current = t, e.preventDefault());
42
+ },
43
+ [i, o]
44
+ ), y = () => {
45
+ document.activeElement instanceof HTMLElement && document.activeElement.blur();
46
+ };
47
+ u(() => {
48
+ if (o) {
49
+ document.body.style.touchAction = "pan-x pan-y";
50
+ return;
51
+ }
52
+ document.body.style.touchAction = "";
53
+ }, [o]), u(() => {
54
+ const e = () => {
55
+ const t = document.activeElement, s = !!(t != null && t.closest('[data-rp="container"]'));
56
+ b(s);
57
+ };
58
+ return window.addEventListener("focusin", e), window.addEventListener("focusout", e), e(), () => {
59
+ window.removeEventListener("focusin", e), window.removeEventListener("focusout", e);
60
+ };
61
+ }, []), u(() => {
62
+ if (!n)
63
+ return;
64
+ const e = (t) => {
65
+ n.contains(t.target) || y();
66
+ };
67
+ return document.addEventListener("scroll", e), () => {
68
+ document.removeEventListener("scroll", e);
69
+ };
70
+ }, [n]), u(() => {
71
+ if (n)
72
+ return n.addEventListener("wheel", f, { passive: !1 }), n.addEventListener("touchstart", h, { passive: !1 }), n.addEventListener("touchmove", m, { passive: !1 }), n.addEventListener("touchend", v, { passive: !1 }), () => {
73
+ n.removeEventListener("wheel", f), n.removeEventListener("touchstart", h), n.removeEventListener("touchmove", m), n.removeEventListener("touchend", v);
74
+ };
75
+ }, [n, f, h, m, v]);
76
+ };
4
77
  export {
5
- p as usePinch
78
+ I as usePinch
6
79
  };
@@ -1,13 +1,15 @@
1
1
  import "react";
2
2
  import "../../contexts/LayoutContainerContext.js";
3
- import { $ as Y } from "../../ToolbarLayout.module-c973eb9c.js";
3
+ import "../../contexts/DimensionPagesContext.js";
4
4
  import "../calculatePage.js";
5
5
  import "react/jsx-runtime";
6
6
  import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/DocumentPasswordContext.js";
8
+ import { K as tr } from "../../ToolbarLayout.module-20b830dd.js";
8
9
  import "../../contexts/DarkModeContext.js";
9
10
  import "../../contexts/RotationContext.js";
10
11
  import "../../contexts/LayerContext.js";
12
+ import "../../contexts/ZoomContext.js";
11
13
  import "../../contexts/ViewModeContext.js";
12
14
  import "../../contexts/ScrollModeContext.js";
13
15
  import "../../contexts/VirtualScrollContext.js";
@@ -22,7 +24,9 @@ import "../../contexts/HighlightContext.js";
22
24
  import "../../contexts/LicenseContext.js";
23
25
  import "../../contexts/DownloadContext.js";
24
26
  import "../../contexts/SmoothScrollContext.js";
27
+ import "../../contexts/ElementPageContext.js";
25
28
  import "../../contexts/PagesRotateContext.js";
29
+ import "../../contexts/GlobalCurrentPage.js";
26
30
  import "../../contexts/LoaderContext.js";
27
31
  import "../../contexts/ToolComponentContext.js";
28
32
  import "../../contexts/IconToolContext.js";
@@ -42,6 +46,7 @@ import "../../components/icons/LoaderIcon.js";
42
46
  import "../../contexts/IconContext.js";
43
47
  import "../../components/ui/RPTooltip.js";
44
48
  import "../../components/ui/DropDown.js";
49
+ import "../../ZoomTool.module-6c5eabbb.js";
45
50
  import "../../components/layout/toolbar/MenuItem.js";
46
51
  import "../../components/layout/toolbar/MenuSeparator.js";
47
52
  import "../dateFormatter.js";
@@ -49,5 +54,5 @@ import "../../components/layout/toolbar/PropertyItem.js";
49
54
  import "../../components/layout/toolbar/RotateTool.js";
50
55
  import "./useDebounce.js";
51
56
  export {
52
- Y as usePresentPage
57
+ tr as usePresentPage
53
58
  };
@@ -2,10 +2,11 @@ import "react";
2
2
  import "react/jsx-runtime";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { A as Y } from "../../ToolbarLayout.module-c973eb9c.js";
5
+ import { t as tr } from "../../ToolbarLayout.module-20b830dd.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
9
+ import "../../contexts/ZoomContext.js";
9
10
  import "../../contexts/ViewModeContext.js";
10
11
  import "../../contexts/ScrollModeContext.js";
11
12
  import "../../contexts/VirtualScrollContext.js";
@@ -16,12 +17,15 @@ import "../../contexts/FullScreenContext.js";
16
17
  import "../../contexts/FileInputContext.js";
17
18
  import "../../contexts/DropFileZoneContext.js";
18
19
  import "../../contexts/LayoutContainerContext.js";
20
+ import "../../contexts/DimensionPagesContext.js";
19
21
  import "../../contexts/LocalizationContext.js";
20
22
  import "../../contexts/HighlightContext.js";
21
23
  import "../../contexts/LicenseContext.js";
22
24
  import "../../contexts/DownloadContext.js";
23
25
  import "../../contexts/SmoothScrollContext.js";
26
+ import "../../contexts/ElementPageContext.js";
24
27
  import "../../contexts/PagesRotateContext.js";
28
+ import "../../contexts/GlobalCurrentPage.js";
25
29
  import "../../contexts/LoaderContext.js";
26
30
  import "../../contexts/ToolComponentContext.js";
27
31
  import "../../contexts/IconToolContext.js";
@@ -41,6 +45,7 @@ import "../../components/icons/LoaderIcon.js";
41
45
  import "../../contexts/IconContext.js";
42
46
  import "../../components/ui/RPTooltip.js";
43
47
  import "../../components/ui/DropDown.js";
48
+ import "../../ZoomTool.module-6c5eabbb.js";
44
49
  import "../../components/layout/toolbar/MenuItem.js";
45
50
  import "../../components/layout/toolbar/MenuSeparator.js";
46
51
  import "../dateFormatter.js";
@@ -48,5 +53,5 @@ import "../../components/layout/toolbar/PropertyItem.js";
48
53
  import "../../components/layout/toolbar/RotateTool.js";
49
54
  import "pdfjs-dist";
50
55
  export {
51
- Y as usePrint
56
+ tr as usePrint
52
57
  };
@@ -3,11 +3,12 @@ import "../../contexts/ScrollModeContext.js";
3
3
  import "react/jsx-runtime";
4
4
  import "../../contexts/RPDocumentContext.js";
5
5
  import "../../contexts/DocumentPasswordContext.js";
6
- import { x as _ } from "../../ToolbarLayout.module-c973eb9c.js";
6
+ import { q as po } from "../../ToolbarLayout.module-20b830dd.js";
7
7
  import "../../contexts/DarkModeContext.js";
8
8
  import "../types.js";
9
9
  import "../../contexts/RotationContext.js";
10
10
  import "../../contexts/LayerContext.js";
11
+ import "../../contexts/ZoomContext.js";
11
12
  import "../../contexts/ViewModeContext.js";
12
13
  import "../../contexts/VirtualScrollContext.js";
13
14
  import "../../contexts/VirtualGridContext.js";
@@ -17,12 +18,15 @@ import "../../contexts/FullScreenContext.js";
17
18
  import "../../contexts/FileInputContext.js";
18
19
  import "../../contexts/DropFileZoneContext.js";
19
20
  import "../../contexts/LayoutContainerContext.js";
21
+ import "../../contexts/DimensionPagesContext.js";
20
22
  import "../../contexts/LocalizationContext.js";
21
23
  import "../../contexts/HighlightContext.js";
22
24
  import "../../contexts/LicenseContext.js";
23
25
  import "../../contexts/DownloadContext.js";
24
26
  import "../../contexts/SmoothScrollContext.js";
27
+ import "../../contexts/ElementPageContext.js";
25
28
  import "../../contexts/PagesRotateContext.js";
29
+ import "../../contexts/GlobalCurrentPage.js";
26
30
  import "../../contexts/LoaderContext.js";
27
31
  import "../../contexts/ToolComponentContext.js";
28
32
  import "../../contexts/IconToolContext.js";
@@ -42,6 +46,7 @@ import "../../components/icons/LoaderIcon.js";
42
46
  import "../../contexts/IconContext.js";
43
47
  import "../../components/ui/RPTooltip.js";
44
48
  import "../../components/ui/DropDown.js";
49
+ import "../../ZoomTool.module-6c5eabbb.js";
45
50
  import "../../components/layout/toolbar/MenuItem.js";
46
51
  import "../../components/layout/toolbar/MenuSeparator.js";
47
52
  import "../dateFormatter.js";
@@ -50,5 +55,5 @@ import "../../components/layout/toolbar/RotateTool.js";
50
55
  import "../smoothScrollTo.js";
51
56
  import "../getScrollDistance.js";
52
57
  export {
53
- _ as useScrollToPage
58
+ po as useScrollToPage
54
59
  };
@@ -4,9 +4,10 @@ import "../highlight.js";
4
4
  import "../../contexts/VirtualScrollContext.js";
5
5
  import "../../contexts/ScrollModeContext.js";
6
6
  import "../../contexts/RPDocumentContext.js";
7
- import { G as $ } from "../../ToolbarLayout.module-c973eb9c.js";
7
+ import "../../contexts/ZoomContext.js";
8
8
  import "react/jsx-runtime";
9
9
  import "../../contexts/DocumentPasswordContext.js";
10
+ import { y as tr } from "../../ToolbarLayout.module-20b830dd.js";
10
11
  import "../../contexts/DarkModeContext.js";
11
12
  import "../../contexts/RotationContext.js";
12
13
  import "../../contexts/LayerContext.js";
@@ -18,12 +19,15 @@ import "../../contexts/FullScreenContext.js";
18
19
  import "../../contexts/FileInputContext.js";
19
20
  import "../../contexts/DropFileZoneContext.js";
20
21
  import "../../contexts/LayoutContainerContext.js";
22
+ import "../../contexts/DimensionPagesContext.js";
21
23
  import "../../contexts/LocalizationContext.js";
22
24
  import "../../contexts/HighlightContext.js";
23
25
  import "../../contexts/LicenseContext.js";
24
26
  import "../../contexts/DownloadContext.js";
25
27
  import "../../contexts/SmoothScrollContext.js";
28
+ import "../../contexts/ElementPageContext.js";
26
29
  import "../../contexts/PagesRotateContext.js";
30
+ import "../../contexts/GlobalCurrentPage.js";
27
31
  import "../../contexts/LoaderContext.js";
28
32
  import "../../contexts/ToolComponentContext.js";
29
33
  import "../../contexts/IconToolContext.js";
@@ -43,6 +47,7 @@ import "../../components/icons/LoaderIcon.js";
43
47
  import "../../contexts/IconContext.js";
44
48
  import "../../components/ui/RPTooltip.js";
45
49
  import "../../components/ui/DropDown.js";
50
+ import "../../ZoomTool.module-6c5eabbb.js";
46
51
  import "../../components/layout/toolbar/MenuItem.js";
47
52
  import "../../components/layout/toolbar/MenuSeparator.js";
48
53
  import "../dateFormatter.js";
@@ -51,5 +56,5 @@ import "../../components/layout/toolbar/RotateTool.js";
51
56
  import "../getScrollDistance.js";
52
57
  import "../getWordPositionInPage.js";
53
58
  export {
54
- $ as useSearch
59
+ tr as useSearch
55
60
  };