@pdf-viewer/react 1.7.2 → 1.7.3-rc.1

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 (57) hide show
  1. package/dist/{Popover-b7402893.js → Popover-1faa77f6.js} +80 -80
  2. package/dist/{RPDefaultLayout-8b0d26d6.js → RPDefaultLayout-7af301cf.js} +915 -901
  3. package/dist/assets/DropDown.css +1 -1
  4. package/dist/assets/Popover.css +1 -1
  5. package/dist/assets/RPDefaultLayout.css +1 -1
  6. package/dist/assets/RotateTool.css +1 -1
  7. package/dist/components/RPController.js +1 -1
  8. package/dist/components/RPPages.js +1 -1
  9. package/dist/components/RPProvider.js +1 -1
  10. package/dist/components/layout/LayoutContainer.js +1 -1
  11. package/dist/components/layout/RPDefaultLayout.js +1 -1
  12. package/dist/components/layout/sidebar/RPSidebar.js +1 -1
  13. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  14. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  15. package/dist/components/layout/toolbar/DocumentDialog.js +1 -1
  16. package/dist/components/layout/toolbar/FileDownloadTool.js +1 -1
  17. package/dist/components/layout/toolbar/MostPageTool.js +1 -1
  18. package/dist/components/layout/toolbar/OtherTool.js +1 -1
  19. package/dist/components/layout/toolbar/Paginate.js +1 -1
  20. package/dist/components/layout/toolbar/PrintTool.js +1 -1
  21. package/dist/components/layout/toolbar/RPToolbar.js +1 -1
  22. package/dist/components/layout/toolbar/RPToolbarEnd.js +1 -1
  23. package/dist/components/layout/toolbar/RotateTool.js +5 -5
  24. package/dist/components/layout/toolbar/SearchResultNavigator.js +1 -1
  25. package/dist/components/layout/toolbar/SearchTool.js +2 -2
  26. package/dist/components/layout/toolbar/ZoomTool.js +1 -1
  27. package/dist/components/page/AnnotationLayer.js +1 -1
  28. package/dist/components/page/CanvasLayer.js +1 -1
  29. package/dist/components/page/DualPage.js +1 -1
  30. package/dist/components/page/RPPage.js +1 -1
  31. package/dist/components/page/SinglePage.js +1 -1
  32. package/dist/components/page/TextHighlightLayer.js +1 -1
  33. package/dist/components/page/TextLayer.js +1 -1
  34. package/dist/components/ui/DropDown.js +10 -10
  35. package/dist/components/ui/LoadingIndicator.js +1 -1
  36. package/dist/components/ui/Popover.js +1 -1
  37. package/dist/contexts/DimensionPagesContext.js +18 -18
  38. package/dist/contexts/PaginationContext.js +1 -1
  39. package/dist/contexts/PrintContext.js +1 -1
  40. package/dist/contexts/RotationContext.js +21 -16
  41. package/dist/contexts/SearchContext.js +1 -1
  42. package/dist/contexts/ThumbnailsContext.js +1 -1
  43. package/dist/contexts/ZoomContext.js +10 -10
  44. package/dist/main.js +1 -1
  45. package/dist/types/utils/types.d.ts +1 -0
  46. package/dist/utils/hooks/useFileDownload.js +1 -1
  47. package/dist/utils/hooks/useLicense.js +1 -1
  48. package/dist/utils/hooks/useLoadPdf.js +29 -24
  49. package/dist/utils/hooks/usePaginate.js +1 -1
  50. package/dist/utils/hooks/usePresentPage.js +1 -1
  51. package/dist/utils/hooks/usePrint.js +1 -1
  52. package/dist/utils/hooks/useScrollToPage.js +1 -1
  53. package/dist/utils/hooks/useSearch.js +1 -1
  54. package/dist/utils/hooks/useThumbnail.js +1 -1
  55. package/dist/utils/hooks/useVirtualReactWindow.js +1 -1
  56. package/dist/utils/hooks/useWatermark.js +1 -1
  57. package/package.json +1 -1
@@ -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-8b0d26d6.js";
3
+ import { l as i, T as r, m as e } from "../RPDefaultLayout-7af301cf.js";
4
4
  export {
5
5
  i as ThumbnailContext,
6
6
  r as ThumbnailProvider,
@@ -8,28 +8,28 @@ import { PAGE_PADDING as p } from "../utils/constants.js";
8
8
  import { getZoomLevel as E } from "../utils/getZoomLevel.js";
9
9
  import { useLayoutContainer as G } from "./LayoutContainerContext.js";
10
10
  import { useViewModeContext as H } from "./ViewModeContext.js";
11
- const h = P({
11
+ const d = P({
12
12
  zoomLevel: 100,
13
13
  currentZoom: 1,
14
14
  setZoomLevel: () => {
15
15
  }
16
16
  }), T = () => {
17
- const n = L(h);
17
+ const n = L(d);
18
18
  return typeof n.currentZoom != "number" && b.warn("Please use this hooks inside children component of RPProvider"), n;
19
19
  }, q = ({ children: n }) => {
20
20
  const {
21
21
  initialScale: r = V.PAGE_FIT,
22
22
  initialPage: u = 1,
23
23
  initialRotation: l = 0
24
- } = A(), [i, a] = y(typeof r == "number" ? r : 100), { pages: s } = D(), { pagesRef: o } = G(), { viewMode: d } = H(), f = c(() => i / 100, [i]), t = c(() => {
25
- let e = s.get(u);
26
- return e || (e = s.get(1)), e == null ? void 0 : e.page.getViewport({ scale: 1, rotation: l });
24
+ } = A(), [i, a] = y(typeof r == "number" ? r : 100), { pages: s } = D(), { pagesRef: e } = G(), { viewMode: h } = H(), f = c(() => i / 100, [i]), t = c(() => {
25
+ let o = s.get(u);
26
+ return o || (o = s.get(1)), o == null ? void 0 : o.page.getViewport({ scale: 1, rotation: l + o.defaultRotation });
27
27
  }, [s, u, l]), m = c(() => {
28
28
  if (!t)
29
29
  return 0;
30
- const e = ((t == null ? void 0 : t.width) || 0) + 2 * p, Z = ((t == null ? void 0 : t.height) || 0) + 2 * p, g = (o == null ? void 0 : o.clientWidth) || 0, v = (o == null ? void 0 : o.clientHeight) || 0;
31
- return E(r, g, v, e, Z, d);
32
- }, [t, r, o]);
30
+ const o = ((t == null ? void 0 : t.width) || 0) + 2 * p, Z = ((t == null ? void 0 : t.height) || 0) + 2 * p, g = (e == null ? void 0 : e.clientWidth) || 0, v = (e == null ? void 0 : e.clientHeight) || 0;
31
+ return E(r, g, v, o, Z, h);
32
+ }, [t, r, e]);
33
33
  S(() => {
34
34
  typeof m == "number" && m && a(m);
35
35
  }, [m]);
@@ -38,10 +38,10 @@ const h = P({
38
38
  currentZoom: f,
39
39
  setZoomLevel: a
40
40
  }), [f, i]);
41
- return /* @__PURE__ */ C(h.Provider, { value: x, children: n });
41
+ return /* @__PURE__ */ C(d.Provider, { value: x, children: n });
42
42
  };
43
43
  export {
44
- h as ZoomContext,
44
+ d as ZoomContext,
45
45
  q as ZoomProvider,
46
46
  T as useZoomContext
47
47
  };
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-8b0d26d6.js";
2
+ import { b as x, R as n, c as s, u as m, d as p, e as f } from "./RPDefaultLayout-7af301cf.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";
@@ -241,6 +241,7 @@ export interface PdfPage {
241
241
  page: PDFPageProxy;
242
242
  thumbnailViewport: PageViewport;
243
243
  thumbnailScale: number;
244
+ defaultRotation: number;
244
245
  }
245
246
  export interface SetPageResult {
246
247
  success: boolean;
@@ -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-8b0d26d6.js";
5
+ import { c as E } from "../../RPDefaultLayout-7af301cf.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-06-26T08:32:16.519Z"), l = "Please visit https://www.react-pdf.dev/manage-license/ to generate a new license key.", s = {
3
+ const b = /* @__PURE__ */ new Date("2025-07-03T02:37:49.834Z"), 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}`,
@@ -1,11 +1,11 @@
1
- import { useState as a, useRef as V, useEffect as x } from "react";
2
- import * as y from "pdfjs-dist";
1
+ import { useState as u, useRef as T, useEffect as y } from "react";
2
+ import * as V from "pdfjs-dist";
3
3
  import { getThumbnailViewport as D } from "../getThumbnailViewport.js";
4
4
  import { useConfigContext as N } from "../../contexts/ConfigContext.js";
5
5
  import { useDocumentPasswordContext as U } from "../../contexts/DocumentPasswordContext.js";
6
6
  const h = (l, e, C = {}) => {
7
- const [r, I] = a(), { workerUrlAdded: L } = N(), [q, R] = a(/* @__PURE__ */ new Map()), i = V(), [v, f] = a(0), [m, k] = a(!1), { password: d, passwordError: S, setPasswordError: g, passwordRequired: P, setPasswordRequired: c } = U(), { onLoadError: p, onLoaded: w } = C;
8
- return x(() => {
7
+ const [r, I] = u(), { workerUrlAdded: L } = N(), [q, k] = u(/* @__PURE__ */ new Map()), i = T(), [v, f] = u(0), [m, x] = u(!1), { password: d, passwordError: S, setPasswordError: g, passwordRequired: P, setPasswordRequired: c } = U(), { onLoadError: p, onLoaded: w } = C;
8
+ return y(() => {
9
9
  if (!L || !l)
10
10
  return;
11
11
  f(0), i.current = Date.now();
@@ -14,42 +14,47 @@ const h = (l, e, C = {}) => {
14
14
  cMapPacked: (e == null ? void 0 : e.isCompressed) ?? !0,
15
15
  ...(e == null ? void 0 : e.url) && { cMapUrl: e.url },
16
16
  ...d && { password: d },
17
- verbosity: y.VerbosityLevel.ERRORS
18
- }, n = y.getDocument(E);
19
- n.onProgress = (s) => {
17
+ verbosity: V.VerbosityLevel.ERRORS
18
+ }, n = V.getDocument(E);
19
+ n.onProgress = (o) => {
20
20
  if (t === i.current) {
21
- const { loaded: b, total: u } = s, T = u ? Math.min(100, Math.round(b / u * 100)) : 0;
22
- f(T);
21
+ const { loaded: b, total: a } = o, R = a ? Math.min(100, Math.round(b / a * 100)) : 0;
22
+ f(R);
23
23
  }
24
- }, k(!0);
25
- const o = n.promise.then((s) => (t === i.current && (I(s), f(100)), w && w(s), c(!1), g(""), s)).catch((s) => {
26
- s instanceof Error && s.name === "PasswordException" ? (c(!0), g(s.message || "Password required")) : s instanceof Error && s.name === "InvalidPDFException" && d ? (c(!0), g("Incorrect password")) : p && p(s);
24
+ }, x(!0);
25
+ const s = n.promise.then((o) => (t === i.current && (I(o), f(100)), w && w(o), c(!1), g(""), o)).catch((o) => {
26
+ o instanceof Error && o.name === "PasswordException" ? (c(!0), g(o.message || "Password required")) : o instanceof Error && o.name === "InvalidPDFException" && d ? (c(!0), g("Incorrect password")) : p && p(o);
27
27
  }).finally(() => {
28
- k(!1);
28
+ x(!1);
29
29
  });
30
30
  return () => {
31
- o.finally(() => {
31
+ s.finally(() => {
32
32
  n.destroy();
33
33
  });
34
34
  };
35
- }, [l, L, d, p, w]), x(() => {
35
+ }, [l, L, d, p, w]), y(() => {
36
36
  if (P)
37
37
  return;
38
38
  const t = /* @__PURE__ */ new Map();
39
39
  if (!r || m) {
40
- R(t);
40
+ k(t);
41
41
  return;
42
42
  }
43
43
  const E = r.numPages, n = [];
44
- for (let o = 1; o <= E; o++) {
45
- const s = r.getPage(o);
46
- n.push(s);
44
+ for (let s = 1; s <= E; s++) {
45
+ const o = r.getPage(s);
46
+ n.push(o);
47
47
  }
48
- Promise.all(n).then((o) => {
49
- o.map((s) => {
50
- const { thumbnailViewport: b, scale: u } = D(s);
51
- t.set(s.pageNumber, { page: s, thumbnailViewport: b, thumbnailScale: u });
52
- }), R(t);
48
+ Promise.all(n).then((s) => {
49
+ s.map((o) => {
50
+ const { thumbnailViewport: b, scale: a } = D(o), R = o.getViewport();
51
+ t.set(o.pageNumber, {
52
+ page: o,
53
+ thumbnailViewport: b,
54
+ thumbnailScale: a,
55
+ defaultRotation: R.rotation
56
+ });
57
+ }), k(t);
53
58
  });
54
59
  }, [r, m, P]), {
55
60
  pdf: r,
@@ -1,6 +1,6 @@
1
1
  import "react";
2
2
  import "../types.js";
3
- import { g as G } from "../../RPDefaultLayout-8b0d26d6.js";
3
+ import { g as G } from "../../RPDefaultLayout-7af301cf.js";
4
4
  import "react/jsx-runtime";
5
5
  import "../../contexts/RPDocumentContext.js";
6
6
  import "../../contexts/DocumentPasswordContext.js";
@@ -5,7 +5,7 @@ import "../calculatePage.js";
5
5
  import "react/jsx-runtime";
6
6
  import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/DocumentPasswordContext.js";
8
- import { v as G } from "../../RPDefaultLayout-8b0d26d6.js";
8
+ import { v as G } from "../../RPDefaultLayout-7af301cf.js";
9
9
  import "../../contexts/DarkModeContext.js";
10
10
  import "../../contexts/RotationContext.js";
11
11
  import "../../contexts/LayerContext.js";
@@ -2,7 +2,7 @@ import "react";
2
2
  import "react/jsx-runtime";
3
3
  import "../../contexts/RPDocumentContext.js";
4
4
  import "../../contexts/DocumentPasswordContext.js";
5
- import { i as F } from "../../RPDefaultLayout-8b0d26d6.js";
5
+ import { i as F } from "../../RPDefaultLayout-7af301cf.js";
6
6
  import "../../contexts/DarkModeContext.js";
7
7
  import "../../contexts/RotationContext.js";
8
8
  import "../../contexts/LayerContext.js";
@@ -3,7 +3,7 @@ import "../../contexts/ScrollModeContext.js";
3
3
  import "react/jsx-runtime";
4
4
  import "../../contexts/RPDocumentContext.js";
5
5
  import "../../contexts/DocumentPasswordContext.js";
6
- import { f as F } from "../../RPDefaultLayout-8b0d26d6.js";
6
+ import { f as F } from "../../RPDefaultLayout-7af301cf.js";
7
7
  import "../../contexts/DarkModeContext.js";
8
8
  import "../types.js";
9
9
  import "../../contexts/RotationContext.js";
@@ -7,7 +7,7 @@ import "../../contexts/RPDocumentContext.js";
7
7
  import "../../contexts/ZoomContext.js";
8
8
  import "react/jsx-runtime";
9
9
  import "../../contexts/DocumentPasswordContext.js";
10
- import { n as I } from "../../RPDefaultLayout-8b0d26d6.js";
10
+ import { n as I } from "../../RPDefaultLayout-7af301cf.js";
11
11
  import "../../contexts/DarkModeContext.js";
12
12
  import "../../contexts/RotationContext.js";
13
13
  import "../../contexts/LayerContext.js";
@@ -3,7 +3,7 @@ import "../renderPage.js";
3
3
  import "react/jsx-runtime";
4
4
  import "../../contexts/RPDocumentContext.js";
5
5
  import "../../contexts/DocumentPasswordContext.js";
6
- import { k as G } from "../../RPDefaultLayout-8b0d26d6.js";
6
+ import { k as G } from "../../RPDefaultLayout-7af301cf.js";
7
7
  import "../../contexts/DarkModeContext.js";
8
8
  import "../../contexts/RotationContext.js";
9
9
  import "../../contexts/LayerContext.js";
@@ -4,7 +4,7 @@ import "../../contexts/ScrollModeContext.js";
4
4
  import "react/jsx-runtime";
5
5
  import "../../contexts/RPDocumentContext.js";
6
6
  import "../../contexts/DocumentPasswordContext.js";
7
- import { s as D } from "../../RPDefaultLayout-8b0d26d6.js";
7
+ import { s as D } from "../../RPDefaultLayout-7af301cf.js";
8
8
  import "../../contexts/DarkModeContext.js";
9
9
  import "../../contexts/RotationContext.js";
10
10
  import "../../contexts/LayerContext.js";
@@ -67,7 +67,7 @@ const m = "data:image/webp;base64,UklGRrabAABXRUJQVlA4WAoAAAAQAAAAnwUA/wMAQUxQSP
67
67
  line-height: 1.25;
68
68
  color: rgba(140, 153, 166, 0.6);
69
69
  pointer-events: none;
70
- z-index: calc(var(--vpv-base-z-index, 1) * 5);
70
+ z-index: calc(var(--rp-base-z-index, 1) * 5);
71
71
  }
72
72
  @media only screen and (min-width: 768px) {
73
73
  .${r} {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@pdf-viewer/react",
3
3
  "private": false,
4
4
  "description": "The PDF Viewer component for React and Next.js",
5
- "version": "1.7.2",
5
+ "version": "1.7.3-rc.1",
6
6
  "keywords": [
7
7
  "component",
8
8
  "frontend",