@pdf-viewer/react 1.6.0 → 1.7.0-beta.0

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 (48) hide show
  1. package/dist/{RPDefaultLayout-6173dbb0.js → RPDefaultLayout-8c323c9f.js} +200 -198
  2. package/dist/components/RPController.js +52 -51
  3. package/dist/components/RPPages.js +1 -1
  4. package/dist/components/RPProvider.js +1 -1
  5. package/dist/components/layout/LayoutContainer.js +1 -1
  6. package/dist/components/layout/RPDefaultLayout.js +1 -1
  7. package/dist/components/layout/sidebar/RPSidebar.js +1 -1
  8. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  9. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  10. package/dist/components/layout/toolbar/DocumentDialog.js +1 -1
  11. package/dist/components/layout/toolbar/FileDownloadTool.js +1 -1
  12. package/dist/components/layout/toolbar/MostPageTool.js +1 -1
  13. package/dist/components/layout/toolbar/OtherTool.js +3 -2
  14. package/dist/components/layout/toolbar/Paginate.js +1 -1
  15. package/dist/components/layout/toolbar/PrintTool.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/ViewModeTool.js +19 -18
  21. package/dist/components/layout/toolbar/ZoomTool.js +1 -1
  22. package/dist/components/page/AnnotationLayer.js +1 -1
  23. package/dist/components/page/CanvasLayer.js +1 -1
  24. package/dist/components/page/DualPage.js +1 -1
  25. package/dist/components/page/RPPage.js +1 -1
  26. package/dist/components/page/SinglePage.js +1 -1
  27. package/dist/components/page/TextHighlightLayer.js +1 -1
  28. package/dist/components/page/TextLayer.js +1 -1
  29. package/dist/components/ui/LoadingIndicator.js +1 -1
  30. package/dist/contexts/PaginationContext.js +1 -1
  31. package/dist/contexts/PrintContext.js +1 -1
  32. package/dist/contexts/SearchContext.js +1 -1
  33. package/dist/contexts/ThumbnailsContext.js +1 -1
  34. package/dist/contexts/ToolbarComponentContext.js +2 -2
  35. package/dist/contexts/ViewModeContext.js +17 -16
  36. package/dist/main.js +1 -1
  37. package/dist/types/components/layout/toolbar/ViewModeTool.d.ts +1 -1
  38. package/dist/types/utils/types.d.ts +3 -2
  39. package/dist/utils/hooks/useFileDownload.js +1 -1
  40. package/dist/utils/hooks/useLicense.js +1 -1
  41. package/dist/utils/hooks/usePaginate.js +1 -1
  42. package/dist/utils/hooks/usePresentPage.js +1 -1
  43. package/dist/utils/hooks/usePrint.js +1 -1
  44. package/dist/utils/hooks/useScrollToPage.js +1 -1
  45. package/dist/utils/hooks/useSearch.js +1 -1
  46. package/dist/utils/hooks/useThumbnail.js +1 -1
  47. package/dist/utils/hooks/useVirtualReactWindow.js +1 -1
  48. package/package.json +1 -1
@@ -1,73 +1,74 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { useState as o, useId as I, useMemo as T } from "react";
3
- import { P as D, S as V, T as k, a as x } from "../RPDefaultLayout-6173dbb0.js";
4
- import { DarkModeProvider as F } from "../contexts/DarkModeContext.js";
5
- import { ScrollMode as b, SelectionMode as w } from "../utils/types.js";
2
+ import { useState as i, useId as V, useMemo as T } from "react";
3
+ import { P as w, S as D, T as k, a as x } from "../RPDefaultLayout-8c323c9f.js";
4
+ import { DarkModeProvider as E } from "../contexts/DarkModeContext.js";
5
+ import { ViewMode as F, ScrollMode as G, SelectionMode as b } from "../utils/types.js";
6
6
  import { RotateProvider as y } from "../contexts/RotationContext.js";
7
- import { LayerProvider as z } from "../contexts/LayerContext.js";
8
- import { ZoomProvider as E } from "../contexts/ZoomContext.js";
9
- import { ViewModeProvider as G } from "../contexts/ViewModeContext.js";
10
- import { ScrollModeProvider as Z } from "../contexts/ScrollModeContext.js";
11
- import { VirtualScrollProvider as _ } from "../contexts/VirtualScrollContext.js";
7
+ import { LayerProvider as _ } from "../contexts/LayerContext.js";
8
+ import { ZoomProvider as z } from "../contexts/ZoomContext.js";
9
+ import { ViewModeProvider as A } from "../contexts/ViewModeContext.js";
10
+ import { ScrollModeProvider as N } from "../contexts/ScrollModeContext.js";
11
+ import { VirtualScrollProvider as Z } from "../contexts/VirtualScrollContext.js";
12
12
  import { VirtualGridProvider as j } from "../contexts/VirtualGridContext.js";
13
- import { SelectionModeProvider as A } from "../contexts/SelectionModeContext.js";
14
- import { InitialStateProvider as H } from "../contexts/InitialStateContext.js";
15
- import { FullScreenProvider as N } from "../contexts/FullScreenContext.js";
16
- import { FileInputProvider as O } from "../contexts/FileInputContext.js";
17
- import { DropFileZoneProvider as U } from "../contexts/DropFileZoneContext.js";
18
- import { LayoutContainerContext as W } from "../contexts/LayoutContainerContext.js";
19
- import { DimensionPagesProvider as X } from "../contexts/DimensionPagesContext.js";
20
- import { LocalizationProvider as $ } from "../contexts/LocalizationContext.js";
21
- import { HighlightProvider as q } from "../contexts/HighlightContext.js";
22
- import { useWatermark as B } from "../utils/hooks/useWatermark.js";
23
- import { DownloadProvider as J } from "../contexts/DownloadContext.js";
24
- import { SmoothScrollProvider as K } from "../contexts/SmoothScrollContext.js";
25
- const Cr = (n) => {
13
+ import { SelectionModeProvider as H } from "../contexts/SelectionModeContext.js";
14
+ import { InitialStateProvider as O } from "../contexts/InitialStateContext.js";
15
+ import { FullScreenProvider as U } from "../contexts/FullScreenContext.js";
16
+ import { FileInputProvider as W } from "../contexts/FileInputContext.js";
17
+ import { DropFileZoneProvider as X } from "../contexts/DropFileZoneContext.js";
18
+ import { LayoutContainerContext as $ } from "../contexts/LayoutContainerContext.js";
19
+ import { DimensionPagesProvider as q } from "../contexts/DimensionPagesContext.js";
20
+ import { LocalizationProvider as B } from "../contexts/LocalizationContext.js";
21
+ import { HighlightProvider as J } from "../contexts/HighlightContext.js";
22
+ import { useWatermark as K } from "../utils/hooks/useWatermark.js";
23
+ import { DownloadProvider as Q } from "../contexts/DownloadContext.js";
24
+ import { SmoothScrollProvider as Y } from "../contexts/SmoothScrollContext.js";
25
+ const Ir = (n) => {
26
26
  const {
27
27
  children: l,
28
28
  darkMode: d = !1,
29
- onDarkModeChange: m,
30
- initialRotation: a = 0,
29
+ onDarkModeChange: a,
30
+ initialRotation: m = 0,
31
31
  textLayer: c = !0,
32
32
  initialPage: f = 1,
33
- // initialViewMode = ViewMode.SINGLE_PAGE,
34
- initialThumbnailsVisible: h = !1,
33
+ initialViewMode: h = F.SINGLE_PAGE,
34
+ initialThumbnailsVisible: P = !1,
35
35
  initialSearch: p,
36
- initialScale: P,
37
- initialScrollMode: s = b.VERTICAL_SCROLLING,
38
- locale: v = "en_US",
36
+ initialScale: s,
37
+ initialScrollMode: v = G.VERTICAL_SCROLLING,
38
+ locale: S = "en_US",
39
39
  localization: u,
40
- downloadFilename: S
41
- } = n, [M, R] = o(null), [i, g] = o(null), [C, L] = o(null), e = I(), t = T(() => `rp-instance-${e.replace(/:/g, "-")}`, [e]);
42
- return B(t), /* @__PURE__ */ r(
43
- H,
40
+ downloadFilename: M
41
+ } = n, [R, g] = i(null), [o, C] = i(null), [L, I] = i(null), e = V(), t = T(() => `rp-instance-${e.replace(/:/g, "-")}`, [e]);
42
+ return K(t), /* @__PURE__ */ r(
43
+ O,
44
44
  {
45
45
  instanceId: t,
46
- initialScale: P,
46
+ initialScale: s,
47
47
  initialPage: f,
48
- initialScrollMode: s,
49
- initialRotation: a,
50
- children: /* @__PURE__ */ r(K, { children: /* @__PURE__ */ r($, { locale: v, localization: u, children: /* @__PURE__ */ r(j, { children: /* @__PURE__ */ r(_, { children: /* @__PURE__ */ r(G, { children: /* @__PURE__ */ r(Z, { children: /* @__PURE__ */ r(A, { initialSelectionMode: w.TEXT, children: /* @__PURE__ */ r(y, { children: /* @__PURE__ */ r(z, { textLayer: c, children: /* @__PURE__ */ r(
51
- W.Provider,
48
+ initialScrollMode: v,
49
+ initialRotation: m,
50
+ initialViewMode: h,
51
+ children: /* @__PURE__ */ r(Y, { children: /* @__PURE__ */ r(B, { locale: S, localization: u, children: /* @__PURE__ */ r(j, { children: /* @__PURE__ */ r(Z, { children: /* @__PURE__ */ r(A, { children: /* @__PURE__ */ r(N, { children: /* @__PURE__ */ r(H, { initialSelectionMode: b.TEXT, children: /* @__PURE__ */ r(y, { children: /* @__PURE__ */ r(_, { textLayer: c, children: /* @__PURE__ */ r(
52
+ $.Provider,
52
53
  {
53
54
  value: {
54
- container: M,
55
- contentRef: i,
56
- pagesRef: C,
57
- setContainer: R,
58
- setContentRef: g,
59
- setPagesRef: L
55
+ container: R,
56
+ contentRef: o,
57
+ pagesRef: L,
58
+ setContainer: g,
59
+ setContentRef: C,
60
+ setPagesRef: I
60
61
  },
61
- children: /* @__PURE__ */ r(E, { children: /* @__PURE__ */ r(X, { children: /* @__PURE__ */ r(D, { children: /* @__PURE__ */ r(
62
- F,
62
+ children: /* @__PURE__ */ r(z, { children: /* @__PURE__ */ r(q, { children: /* @__PURE__ */ r(w, { children: /* @__PURE__ */ r(
63
+ E,
63
64
  {
64
65
  darkMode: d,
65
- onDarkModeChange: m,
66
- children: /* @__PURE__ */ r(V, { initialSearch: p, children: /* @__PURE__ */ r(q, { children: /* @__PURE__ */ r(
66
+ onDarkModeChange: a,
67
+ children: /* @__PURE__ */ r(D, { initialSearch: p, children: /* @__PURE__ */ r(J, { children: /* @__PURE__ */ r(
67
68
  k,
68
69
  {
69
- initialThumbnailsVisible: h,
70
- children: /* @__PURE__ */ r(U, { children: /* @__PURE__ */ r(N, { elementRef: i, children: /* @__PURE__ */ r(x, { children: /* @__PURE__ */ r(J, { downloadFilename: S, children: /* @__PURE__ */ r(O, { children: l }) }) }) }) })
70
+ initialThumbnailsVisible: P,
71
+ children: /* @__PURE__ */ r(X, { children: /* @__PURE__ */ r(U, { elementRef: o, children: /* @__PURE__ */ r(x, { children: /* @__PURE__ */ r(Q, { downloadFilename: M, children: /* @__PURE__ */ r(W, { children: l }) }) }) }) })
71
72
  }
72
73
  ) }) })
73
74
  }
@@ -78,5 +79,5 @@ const Cr = (n) => {
78
79
  );
79
80
  };
80
81
  export {
81
- Cr as RPController
82
+ Ir as RPController
82
83
  };
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { R as L } from "../RPDefaultLayout-6173dbb0.js";
3
+ import { R as L } from "../RPDefaultLayout-8c323c9f.js";
4
4
  import "../contexts/VirtualScrollContext.js";
5
5
  import "../contexts/RPDocumentContext.js";
6
6
  import "../contexts/DocumentPasswordContext.js";
@@ -4,7 +4,7 @@ import { DocumentProvider as s } from "../contexts/RPDocumentContext.js";
4
4
  import { DocumentPasswordProvider as l } from "../contexts/DocumentPasswordContext.js";
5
5
  import { RPController as P } from "./RPController.js";
6
6
  import { LoaderProvider as f } from "../contexts/LoaderContext.js";
7
- import "../RPDefaultLayout-6173dbb0.js";
7
+ import "../RPDefaultLayout-8c323c9f.js";
8
8
  import "./RPConfig.js";
9
9
  import "./RPTheme.js";
10
10
  import "./RPDropFileZone.js";
@@ -1,7 +1,7 @@
1
1
  import "react/jsx-runtime";
2
2
  import "../../clsx-0c6e471a.js";
3
3
  import "react";
4
- import { K as E } from "../../RPDefaultLayout-6173dbb0.js";
4
+ import { K as E } from "../../RPDefaultLayout-8c323c9f.js";
5
5
  import "../../contexts/ThemeContext.js";
6
6
  import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/DocumentPasswordContext.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { b as x } from "../../RPDefaultLayout-6173dbb0.js";
3
+ import { b as x } from "../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../contexts/ToolbarComponentContext.js";
5
5
  import "../../contexts/LayoutContainerContext.js";
6
6
  import "./Container.js";
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../icons/Thumbnail.js";
4
4
  import "../../ui/Button.js";
5
- import { J as s } from "../../../RPDefaultLayout-6173dbb0.js";
5
+ import { J as s } from "../../../RPDefaultLayout-8c323c9f.js";
6
6
  import "./RPSplitter.js";
7
7
  import "../../../contexts/ToolbarComponentContext.js";
8
8
  import "../../../contexts/IconContext.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { H as a } from "../../../RPDefaultLayout-6173dbb0.js";
3
+ import { H as a } from "../../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../../clsx-0c6e471a.js";
5
5
  import "../../icons/LoaderIcon.js";
6
6
  export {
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { I as t } from "../../../RPDefaultLayout-6173dbb0.js";
3
+ import { I as t } from "../../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../../utils/hooks/useInfiniteScroll.js";
5
5
  export {
6
6
  t as Thumbnails
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { x as J } from "../../../RPDefaultLayout-6173dbb0.js";
3
+ import { x as J } from "../../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../../contexts/LayoutContainerContext.js";
5
5
  import "../../icons/CloseIcon.js";
6
6
  import "../../../utils/dateFormatter.js";
@@ -3,7 +3,7 @@ import "../../icons/FileDownloadDefaultIcon.js";
3
3
  import "../../../contexts/ToolbarComponentContext.js";
4
4
  import "../../../contexts/IconContext.js";
5
5
  import "../../ui/Button.js";
6
- import { F as f } from "../../../RPDefaultLayout-6173dbb0.js";
6
+ import { F as f } from "../../../RPDefaultLayout-8c323c9f.js";
7
7
  import "./MenuItem.js";
8
8
  import "../../../contexts/ViewportContext.js";
9
9
  import "../../ui/RPTooltip.js";
@@ -4,7 +4,7 @@ import "./MenuItem.js";
4
4
  import "react";
5
5
  import "../../../contexts/RPDocumentContext.js";
6
6
  import "../../../contexts/DocumentPasswordContext.js";
7
- import { M as I } from "../../../RPDefaultLayout-6173dbb0.js";
7
+ import { M as I } from "../../../RPDefaultLayout-8c323c9f.js";
8
8
  import "../../../contexts/DarkModeContext.js";
9
9
  import "../../../contexts/RotationContext.js";
10
10
  import "../../../contexts/LayerContext.js";
@@ -3,10 +3,11 @@ import "../../../contexts/LayoutContainerContext.js";
3
3
  import "../../icons/ThreeDotIcon.js";
4
4
  import "../../ui/Button.js";
5
5
  import "../../ui/DropDown.js";
6
- import { O as n } from "../../../RPDefaultLayout-6173dbb0.js";
6
+ import { O as q } from "../../../RPDefaultLayout-8c323c9f.js";
7
7
  import "../../../contexts/OtherToolContext.js";
8
8
  import "./DocumentProperties.js";
9
9
  import "./RotateTool.js";
10
+ import "./ViewModeTool.js";
10
11
  import "./ScrollModeTool.js";
11
12
  import "../../../contexts/ViewportContext.js";
12
13
  import "./FileUploadTool.js";
@@ -19,5 +20,5 @@ import "../../../contexts/ToolbarComponentContext.js";
19
20
  import "react";
20
21
  import "../../../contexts/LocalizationContext.js";
21
22
  export {
22
- n as OtherTool
23
+ q as OtherTool
23
24
  };
@@ -3,7 +3,7 @@ import "react";
3
3
  import "../../icons/ChevronUpIcon.js";
4
4
  import "../../ui/Button.js";
5
5
  import "../../ui/Input.js";
6
- import { w } from "../../../RPDefaultLayout-6173dbb0.js";
6
+ import { w } from "../../../RPDefaultLayout-8c323c9f.js";
7
7
  import "../../../contexts/IconContext.js";
8
8
  import "../../../contexts/ToolbarComponentContext.js";
9
9
  import "../../../contexts/ViewportContext.js";
@@ -3,7 +3,7 @@ import "../../icons/PrintDefaultIcon.js";
3
3
  import "../../../contexts/ToolbarComponentContext.js";
4
4
  import "../../../contexts/IconContext.js";
5
5
  import "../../ui/Button.js";
6
- import { y as s } from "../../../RPDefaultLayout-6173dbb0.js";
6
+ import { y as s } from "../../../RPDefaultLayout-8c323c9f.js";
7
7
  import "../../../contexts/ViewportContext.js";
8
8
  import "../../../contexts/LocalizationContext.js";
9
9
  import "./MenuItem.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { G as a } from "../../../RPDefaultLayout-6173dbb0.js";
3
+ import { G as a } from "../../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../../contexts/ToolbarComponentContext.js";
5
5
  import "../../../contexts/ViewportContext.js";
6
6
  export {
@@ -1,7 +1,7 @@
1
1
  import "react/jsx-runtime";
2
2
  import "./FileUploadTool.js";
3
3
  import "./DarkModeTool.js";
4
- import { z as b } from "../../../RPDefaultLayout-6173dbb0.js";
4
+ import { z as b } from "../../../RPDefaultLayout-8c323c9f.js";
5
5
  import "./FullScreenTool.js";
6
6
  import "../../../contexts/ViewportContext.js";
7
7
  export {
@@ -3,7 +3,7 @@ import "../../ui/RPTooltip.js";
3
3
  import "../../ui/Button.js";
4
4
  import "../../icons/ChevronUpIcon.js";
5
5
  import "../../../contexts/LocalizationContext.js";
6
- import { B as s } from "../../../RPDefaultLayout-6173dbb0.js";
6
+ import { B as s } from "../../../RPDefaultLayout-8c323c9f.js";
7
7
  import "../../../SearchCloseButton-ddb9877e.js";
8
8
  export {
9
9
  s as SearchResultNavigator
@@ -8,7 +8,7 @@ import "../../ui/Input.js";
8
8
  import "../../ui/Checkbox.js";
9
9
  import "../../icons/ClearIcon.js";
10
10
  import "../../icons/LoaderIcon.js";
11
- import { E as P } from "../../../RPDefaultLayout-6173dbb0.js";
11
+ import { E as P } from "../../../RPDefaultLayout-8c323c9f.js";
12
12
  import "../../../contexts/IconContext.js";
13
13
  import "../../../contexts/RPDocumentContext.js";
14
14
  import "../../../contexts/DocumentPasswordContext.js";
@@ -1,30 +1,31 @@
1
- import { jsx as e, Fragment as a, jsxs as o } from "react/jsx-runtime";
2
- import { G as u } from "../../../index-7279fb4e.js";
3
- import { MenuSeparator as p } from "./MenuSeparator.js";
1
+ import { jsx as e, Fragment as u, jsxs as o } from "react/jsx-runtime";
2
+ import { G as p } from "../../../index-7279fb4e.js";
3
+ import { MenuSeparator as d } from "./MenuSeparator.js";
4
4
  import { MenuItem as t } from "./MenuItem.js";
5
- import { DualPageIcon as d } from "../../icons/SinglePageIcon.js";
6
- import { SinglePageIcon as f } from "../../icons/DualPageIcon.js";
7
- import { useViewModeContext as g } from "../../../contexts/ViewModeContext.js";
8
- import { ScrollMode as M, ViewMode as i } from "../../../utils/types.js";
5
+ import { DualPageIcon as f } from "../../icons/SinglePageIcon.js";
6
+ import { SinglePageIcon as g } from "../../icons/DualPageIcon.js";
7
+ import { useViewModeContext as M } from "../../../contexts/ViewModeContext.js";
8
+ import { ScrollMode as h, ViewMode as i } from "../../../utils/types.js";
9
9
  import { CheckIcon as l } from "../../icons/CheckIcon.js";
10
- import { useScrollModeContext as h } from "../../../contexts/ScrollModeContext.js";
11
- import { useMemo as I } from "react";
12
- const S = () => /* @__PURE__ */ e(f, {}), N = () => /* @__PURE__ */ e(d, {}), O = () => {
13
- const { viewMode: r, setDualPage: m, setSinglePage: c } = g(), { scrollMode: n } = h(), s = I(() => [M.HORIZONTAL_SCROLLING].includes(n), [n]);
14
- return /* @__PURE__ */ e(a, { children: /* @__PURE__ */ o(u, { children: [
10
+ import { useToolbarComponentContext as I } from "../../../contexts/ToolbarComponentContext.js";
11
+ import { useScrollModeContext as S } from "../../../contexts/ScrollModeContext.js";
12
+ import { useMemo as C } from "react";
13
+ const N = () => /* @__PURE__ */ e(g, {}), x = () => /* @__PURE__ */ e(f, {}), V = () => {
14
+ const { viewMode: r, setDualPage: m, setSinglePage: c } = M(), { viewModeTool: s } = I(), { scrollMode: n } = S(), a = C(() => [h.HORIZONTAL_SCROLLING].includes(n), [n]);
15
+ return s ? /* @__PURE__ */ e(u, { children: /* @__PURE__ */ o(p, { children: [
15
16
  /* @__PURE__ */ o(t, { onClick: c, children: [
16
- /* @__PURE__ */ e("div", { className: "rp-menu-item-left", children: /* @__PURE__ */ e(S, {}) }),
17
+ /* @__PURE__ */ e("div", { className: "rp-menu-item-left", children: /* @__PURE__ */ e(N, {}) }),
17
18
  "Single page",
18
19
  r === i.SINGLE_PAGE ? /* @__PURE__ */ e(l, { className: "rp-menu-item-right" }) : null
19
20
  ] }),
20
- /* @__PURE__ */ o(t, { disabled: s, onClick: m, children: [
21
- /* @__PURE__ */ e("div", { className: "rp-menu-item-left", children: /* @__PURE__ */ e(N, {}) }),
21
+ /* @__PURE__ */ o(t, { disabled: a, onClick: m, children: [
22
+ /* @__PURE__ */ e("div", { className: "rp-menu-item-left", children: /* @__PURE__ */ e(x, {}) }),
22
23
  "Dual page",
23
24
  r === i.DUAL_PAGE ? /* @__PURE__ */ e(l, { className: "rp-menu-item-right" }) : null
24
25
  ] }),
25
- /* @__PURE__ */ e(p, {})
26
- ] }) });
26
+ /* @__PURE__ */ e(d, {})
27
+ ] }) }) : null;
27
28
  };
28
29
  export {
29
- O as ViewModeTool
30
+ V as ViewModeTool
30
31
  };
@@ -5,7 +5,7 @@ import "../../icons/ChevronUpIcon.js";
5
5
  import "../../icons/ZoomInIcon.js";
6
6
  import "../../icons/ZoomOutIcon.js";
7
7
  import "../../ui/Button.js";
8
- import { Z as w } from "../../../RPDefaultLayout-6173dbb0.js";
8
+ import { Z as w } from "../../../RPDefaultLayout-8c323c9f.js";
9
9
  import "../../ui/DropDown.js";
10
10
  import "../../../contexts/LayoutContainerContext.js";
11
11
  import "../../../index-7279fb4e.js";
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { A as I } from "../../RPDefaultLayout-6173dbb0.js";
5
+ import { A as I } from "../../RPDefaultLayout-8c323c9f.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../utils/types.js";
8
8
  import "../../contexts/RotationContext.js";
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { C as F } from "../../RPDefaultLayout-6173dbb0.js";
5
+ import { C as F } from "../../RPDefaultLayout-8c323c9f.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { D as p } from "../../RPDefaultLayout-6173dbb0.js";
3
+ import { D as p } from "../../RPDefaultLayout-8c323c9f.js";
4
4
  export {
5
5
  p as DualPage
6
6
  };
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { r as E } from "../../RPDefaultLayout-6173dbb0.js";
3
+ import { r as E } from "../../RPDefaultLayout-8c323c9f.js";
4
4
  import "../../contexts/RPDocumentContext.js";
5
5
  import "../../contexts/DocumentPasswordContext.js";
6
6
  import "../../contexts/DarkModeContext.js";
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { t as i } from "../../RPDefaultLayout-6173dbb0.js";
3
+ import { t as i } from "../../RPDefaultLayout-8c323c9f.js";
4
4
  export {
5
5
  i as SinglePage
6
6
  };
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { q as E } from "../../RPDefaultLayout-6173dbb0.js";
5
+ import { q as E } from "../../RPDefaultLayout-8c323c9f.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { p as F } from "../../RPDefaultLayout-6173dbb0.js";
5
+ import { p as F } from "../../RPDefaultLayout-8c323c9f.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -1,5 +1,5 @@
1
1
  import "react/jsx-runtime";
2
- import { L as i } from "../../RPDefaultLayout-6173dbb0.js";
2
+ import { L as i } from "../../RPDefaultLayout-8c323c9f.js";
3
3
  import "../../clsx-0c6e471a.js";
4
4
  import "../../contexts/LocalizationContext.js";
5
5
  export {
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { h as e, P as m, u as p } from "../RPDefaultLayout-6173dbb0.js";
3
+ import { h as e, P as m, u as p } from "../RPDefaultLayout-8c323c9f.js";
4
4
  import "./RPDocumentContext.js";
5
5
  import "../utils/appConsole.js";
6
6
  export {
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { j as e, a as n, d as a } from "../RPDefaultLayout-6173dbb0.js";
3
+ import { j as e, a as n, d as a } from "../RPDefaultLayout-8c323c9f.js";
4
4
  export {
5
5
  e as PrintContext,
6
6
  n as PrintProvider,
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { o as a, S as s, e as S } from "../RPDefaultLayout-6173dbb0.js";
3
+ import { o as a, S as s, e as S } from "../RPDefaultLayout-8c323c9f.js";
4
4
  export {
5
5
  a as SearchContext,
6
6
  s as SearchProvider,
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { l as i, T as r, m as e } from "../RPDefaultLayout-6173dbb0.js";
3
+ import { l as i, T as r, m as e } from "../RPDefaultLayout-8c323c9f.js";
4
4
  export {
5
5
  i as ThumbnailContext,
6
6
  r as ThumbnailProvider,
@@ -8,7 +8,7 @@ const e = l({
8
8
  openFileTool: !0,
9
9
  dropFileZone: !0,
10
10
  downloadTool: !0,
11
- // viewModeTool: true,
11
+ viewModeTool: !0,
12
12
  scrollModeTool: !0,
13
13
  printTool: !0,
14
14
  showPrintProgress: !0,
@@ -23,7 +23,7 @@ const e = l({
23
23
  openFileTool: !0,
24
24
  dropFileZone: !0,
25
25
  downloadTool: !0,
26
- // viewModeTool: true,
26
+ viewModeTool: !0,
27
27
  scrollModeTool: !0,
28
28
  printTool: !0,
29
29
  thumbnailTool: !0,
@@ -1,27 +1,28 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
- import { createContext as m, useContext as a, useState as d, useCallback as r, useMemo as P } from "react";
3
- import { appConsole as C } from "../utils/appConsole.js";
4
- import { ViewMode as t } from "../utils/types.js";
5
- const s = m({
2
+ import { createContext as m, useContext as d, useState as P, useCallback as i, useMemo as C } from "react";
3
+ import { appConsole as p } from "../utils/appConsole.js";
4
+ import { ViewMode as e } from "../utils/types.js";
5
+ import { useInitialStateContext as f } from "./InitialStateContext.js";
6
+ const r = m({
6
7
  columnCount: 1,
7
8
  setSinglePage: () => {
8
9
  },
9
10
  setDualPage: () => {
10
11
  },
11
- viewMode: t.SINGLE_PAGE
12
- }), g = () => {
13
- const e = a(s);
14
- return typeof e.columnCount > "u" && C.error("Please use this hooks inside children component of RPProvider"), e;
15
- }, v = ({ children: e }) => {
16
- const [o, n] = d(1), i = r(() => {
12
+ viewMode: e.SINGLE_PAGE
13
+ }), w = () => {
14
+ const o = d(r);
15
+ return typeof o.columnCount > "u" && p.error("Please use this hooks inside children component of RPProvider"), o;
16
+ }, g = ({ children: o }) => {
17
+ const { initialViewMode: s = e.SINGLE_PAGE } = f(), [t, n] = P(s === e.SINGLE_PAGE ? 1 : 2), u = i(() => {
17
18
  n(1);
18
- }, []), u = r(() => {
19
+ }, []), c = i(() => {
19
20
  n(2);
20
- }, []), c = P(() => o === 1 ? t.SINGLE_PAGE : t.DUAL_PAGE, [o]);
21
- return /* @__PURE__ */ l(s.Provider, { value: { columnCount: o, setSinglePage: i, setDualPage: u, viewMode: c }, children: e });
21
+ }, []), a = C(() => t === 1 ? e.SINGLE_PAGE : e.DUAL_PAGE, [t]);
22
+ return /* @__PURE__ */ l(r.Provider, { value: { columnCount: t, setSinglePage: u, setDualPage: c, viewMode: a }, children: o });
22
23
  };
23
24
  export {
24
- s as ViewModeContext,
25
- v as ViewModeProvider,
26
- g as useViewModeContext
25
+ r as ViewModeContext,
26
+ g as ViewModeProvider,
27
+ w as useViewModeContext
27
28
  };
package/dist/main.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { RPProvider as t } from "./components/RPProvider.js";
2
- import { b as x, R as n, c as s, u as m, d as p, e as f } from "./RPDefaultLayout-6173dbb0.js";
2
+ import { b as x, R as n, c as s, u as m, d as p, e as f } from "./RPDefaultLayout-8c323c9f.js";
3
3
  import { RPConfig as a } from "./components/RPConfig.js";
4
4
  import { RPController as l } from "./components/RPController.js";
5
5
  import { RPTheme as P } from "./components/RPTheme.js";
@@ -1 +1 @@
1
- export declare const ViewModeTool: () => import("react/jsx-runtime").JSX.Element;
1
+ export declare const ViewModeTool: () => import("react/jsx-runtime").JSX.Element | null;
@@ -329,6 +329,7 @@ export interface RPSlots {
329
329
  dropFileZone?: boolean | React.ReactNode | React.ComponentType;
330
330
  downloadTool?: boolean | FC<DownloadToolProps>;
331
331
  zoomTool?: boolean | FC<ZoomProps>;
332
+ viewModeTool?: boolean;
332
333
  scrollModeTool?: boolean;
333
334
  thumbnailTool?: boolean | FC<ThumbnailToolProps>;
334
335
  pageNavigationTool?: boolean | FC<PageNavigationToolProps>;
@@ -483,7 +484,7 @@ export interface RPProviderProps extends PropsWithChildren, LoadPDFOptions, RPCo
483
484
  characterMap?: CharacterMap;
484
485
  }
485
486
  export type LocalizationMap = Record<string, Localization>;
486
- export interface RPControllerProps extends PropsWithChildren, DarkModeProviderProps, RotateProviderProps, LayerProviderProps, ZoomProviderProps, PageProviderProps, ScrollModeProps {
487
+ export interface RPControllerProps extends PropsWithChildren, DarkModeProviderProps, RotateProviderProps, LayerProviderProps, ZoomProviderProps, PageProviderProps, ViewModeProps, ScrollModeProps {
487
488
  initialSearch?: string;
488
489
  initialThumbnailsVisible?: boolean;
489
490
  locale?: string;
@@ -516,7 +517,7 @@ export interface ZoomContextType {
516
517
  export type ZoomProps = Omit<ZoomContextType, 'currentZoom'>;
517
518
  export type InitialStateContextType = {
518
519
  instanceId: string;
519
- } & ZoomProviderProps & PageProviderProps & ScrollModeProps & RotateProviderProps;
520
+ } & ZoomProviderProps & PageProviderProps & ViewModeProps & ScrollModeProps & RotateProviderProps;
520
521
  export interface ZoomProviderProps {
521
522
  initialScale?: number | ZoomLevel;
522
523
  }
@@ -2,7 +2,7 @@ import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { c as E } from "../../RPDefaultLayout-6173dbb0.js";
5
+ import { c as E } from "../../RPDefaultLayout-8c323c9f.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -1,6 +1,6 @@
1
1
  import { useState as g, useCallback as h, useEffect as A } from "react";
2
2
  import { appConsole as c } from "../appConsole.js";
3
- const b = /* @__PURE__ */ new Date("2025-05-26T08:41:06.647Z"), l = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
3
+ const b = /* @__PURE__ */ new Date("2025-05-26T16:25:26.122Z"), l = "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. ${l}`,
5
5
  mismatchedDomain: `Your license key is not valid for the current domain / IP. ${l}`,
6
6
  expired: `Your license key has expired. ${l}`,