@react-pdf-kit/viewer 2.8.0-beta.7 → 2.8.0-beta.8

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 (93) hide show
  1. package/README.md +44 -30
  2. package/dist/{AnnotationLayer-Dl6VxRzL.js → AnnotationLayer-CyOYh0Tw.js} +1 -1
  3. package/dist/CanvasLayer-CJqCJ30J.js +111 -0
  4. package/dist/PaginationContext-DIzsZhFd.js +194 -0
  5. package/dist/RPPages-BQw330_L.js +655 -0
  6. package/dist/{Thumbnail-BVjnCNxv.js → Thumbnail-C6zkvwcs.js} +1 -1
  7. package/dist/{Thumbnails-CrKLESh3.js → Thumbnails-DKG6I7pb.js} +2 -2
  8. package/dist/assets/RPPages.css +1 -1
  9. package/dist/assets/style.js +1 -1
  10. package/dist/components/RPController.js +39 -39
  11. package/dist/components/RPPages.js +1 -1
  12. package/dist/components/RPProvider.js +1 -1
  13. package/dist/components/layout/LayoutContainer.js +6 -6
  14. package/dist/components/layout/LayoutWrapper.js +5 -5
  15. package/dist/components/layout/RPDefaultLayout.js +1 -1
  16. package/dist/components/layout/RPLayout.js +1 -1
  17. package/dist/components/layout/sidebar/RPSidebar.js +1 -1
  18. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  19. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  20. package/dist/components/layout/toolbar/MostPageTool.js +1 -1
  21. package/dist/components/layout/toolbar/Paginate.js +1 -1
  22. package/dist/components/layout/toolbar/ScrollModeTool.js +4 -4
  23. package/dist/components/layout/toolbar/ToolbarCustom.js +1 -1
  24. package/dist/components/layout/toolbar/ToolbarDefault.js +1 -1
  25. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +1 -1
  26. package/dist/components/layout/toolbar/tools/FirstPageTool.js +1 -1
  27. package/dist/components/layout/toolbar/tools/HorizontalScrollingTool.js +2 -2
  28. package/dist/components/layout/toolbar/tools/InputPageTool.js +1 -1
  29. package/dist/components/layout/toolbar/tools/LastPageTool.js +1 -1
  30. package/dist/components/layout/toolbar/tools/NextPageTool.js +1 -1
  31. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +1 -1
  32. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +1 -1
  33. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +5 -5
  34. package/dist/components/page/AnnotationLayer.js +1 -1
  35. package/dist/components/page/CanvasLayer.js +1 -1
  36. package/dist/components/page/DualPage.js +1 -1
  37. package/dist/components/page/DualPageWithCover.js +1 -1
  38. package/dist/components/page/RPPage.js +18 -18
  39. package/dist/components/page/SinglePage.js +1 -1
  40. package/dist/components/page/TextHighlightLayer.js +1 -1
  41. package/dist/components/page/TextLayer.js +1 -1
  42. package/dist/components/ui/PasswordModal.js +1 -1
  43. package/dist/contexts/ElementPageContext.js +46 -39
  44. package/dist/contexts/ElementThumbnailContext.js +1 -1
  45. package/dist/contexts/PaginationContext.js +1 -1
  46. package/dist/contexts/RenderQueueProvider.js +19 -17
  47. package/dist/contexts/RenderedPagesCache.js +32 -13
  48. package/dist/contexts/VirtualScrollContext.js +10 -13
  49. package/dist/{de_DE-C1OrwQKj.js → de_DE-x4Z-jQrz.js} +12 -0
  50. package/dist/{main-CdlJS0xf.js → main-7sMXtgRg.js} +1 -1
  51. package/dist/main.js +3 -3
  52. package/dist/style-CJtyyrJx.js +5 -0
  53. package/dist/types/components/page/CanvasLayer.d.ts +4 -1
  54. package/dist/types/contexts/RenderedPagesCache.d.ts +3 -0
  55. package/dist/types/contexts/VirtualScrollContext.d.ts +0 -3
  56. package/dist/types/locales/de_DE.json.d.ts +2 -0
  57. package/dist/types/locales/en_US.json.d.ts +2 -0
  58. package/dist/types/locales/it_IT.json.d.ts +2 -0
  59. package/dist/types/locales/pt_PT.json.d.ts +2 -0
  60. package/dist/types/locales/th_TH.json.d.ts +2 -0
  61. package/dist/types/locales/zh_CN.json.d.ts +2 -0
  62. package/dist/types/utils/const.d.ts +3 -0
  63. package/dist/types/utils/constants.d.ts +1 -0
  64. package/dist/types/utils/documentLayout.d.ts +60 -0
  65. package/dist/types/utils/hooks/usePresentPage.d.ts +2 -2
  66. package/dist/types/utils/types.d.ts +4 -1
  67. package/dist/utils/const.js +2 -2
  68. package/dist/utils/constants.js +2 -2
  69. package/dist/utils/documentLayout.js +141 -0
  70. package/dist/utils/hooks/useLicense.js +1 -1
  71. package/dist/utils/hooks/useLoadPdf.js +73 -63
  72. package/dist/utils/hooks/useLocalization.js +1 -1
  73. package/dist/utils/hooks/usePaginate.js +1 -1
  74. package/dist/utils/hooks/usePinch.js +56 -49
  75. package/dist/utils/hooks/usePresentPage.js +31 -59
  76. package/dist/utils/hooks/useScrollToPage.js +1 -1
  77. package/dist/utils/hooks/useSearch.js +66 -67
  78. package/dist/utils/types.js +2 -2
  79. package/package.json +1 -1
  80. package/dist/CanvasLayer-cRwL_IIT.js +0 -105
  81. package/dist/PaginationContext-B3qzCYJu.js +0 -235
  82. package/dist/RPPages-5yXo7yhq.js +0 -1307
  83. package/dist/contexts/VirtualGridContext.js +0 -18
  84. package/dist/style-CWQAmimK.js +0 -5
  85. package/dist/types/contexts/VirtualGridContext.d.ts +0 -9
  86. package/dist/types/utils/calculatePage.d.ts +0 -12
  87. package/dist/types/utils/hooks/useVirtualReactWindow.d.ts +0 -17
  88. package/dist/utils/calculatePage.js +0 -30
  89. package/dist/utils/hooks/useVirtualReactWindow.js +0 -86
  90. /package/dist/{PasswordModal-BW_C2ULg.js → PasswordModal-S0leMhEd.js} +0 -0
  91. /package/dist/{RPLayout.module-DCbTHUuG.js → RPLayout.module-BH5r8dDc.js} +0 -0
  92. /package/dist/{TextHighlightLayer-BSVgBxR3.js → TextHighlightLayer-3vIZbRyL.js} +0 -0
  93. /package/dist/{TextLayer-BdoXGj0Z.js → TextLayer-D-V9kogG.js} +0 -0
@@ -1,51 +1,58 @@
1
- import { LicenseType as e, ScrollMode as t } from "../utils/types.js";
2
- import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as n } from "../utils/const.js";
3
- import { useScrollModeContext as r } from "./ScrollModeContext.js";
4
- import { useViewModeContext as i } from "./ViewModeContext.js";
5
- import { useVirtualScrollContext as a } from "./VirtualScrollContext.js";
6
- import { useLayoutContainer as o } from "./LayoutContainerContext.js";
7
- import { useZoomContext as s } from "./ZoomContext.js";
8
- import { usePagesRotateContext as c } from "./PagesRotateContext.js";
9
- import { useDimensionPagesContext as l } from "./DimensionPagesContext.js";
10
- import { useSmoothScrollContext as u } from "./SmoothScrollContext.js";
11
- import { getScrollDistance as d } from "../utils/getScrollDistance.js";
1
+ import { LicenseType as e } from "../utils/types.js";
2
+ import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as t } from "../utils/const.js";
3
+ import { useScrollModeContext as n } from "./ScrollModeContext.js";
4
+ import { useViewModeContext as r } from "./ViewModeContext.js";
5
+ import { useVirtualScrollContext as i } from "./VirtualScrollContext.js";
6
+ import { useLayoutContainer as a } from "./LayoutContainerContext.js";
7
+ import { useZoomContext as o } from "./ZoomContext.js";
8
+ import { usePagesRotateContext as s } from "./PagesRotateContext.js";
9
+ import { useDimensionPagesContext as c } from "./DimensionPagesContext.js";
10
+ import { useSmoothScrollContext as l } from "./SmoothScrollContext.js";
11
+ import { buildDocumentLayout as u, getPagePlacement as d } from "../utils/documentLayout.js";
12
12
  import { useLicenseContext as f } from "./LicenseContext.js";
13
13
  import { getElementPagePosition as p } from "../utils/getElementPositionInPage.js";
14
14
  import { createContext as m, useCallback as h, useContext as g, useMemo as _, useRef as v, useState as y } from "react";
15
15
  import { jsx as b } from "react/jsx-runtime";
16
16
  //#region lib/contexts/ElementPageContext.tsx
17
17
  var x = m(void 0), S = ({ children: e }) => {
18
- let [n, f] = y({}), { widths: m, heights: g } = l(), { pagesRef: _ } = o(), { scrollMode: v } = r(), { pageRotate: S } = c(), { currentZoom: C } = s(), { columnCount: w } = i(), { pageScrollElementRef: T, virtualScrollableElementRef: E } = a(), { scrollBehavior: D } = u(), O = h((e, r, i) => {
19
- let a = i ?? { behavior: D }, o = E || T;
20
- if (!_ || !o) return;
21
- let s = n[e]?.[r];
22
- if (!s) return;
23
- let c = 0, l = 0;
24
- if (v === t.VERTICAL_SCROLLING) {
25
- let t = e - 1, n = w, r = t % n;
26
- c = d(g, Math.floor(t / n)), l = d(m, r);
27
- }
28
- v === t.HORIZONTAL_SCROLLING && (l = m.slice(0, e - 1).reduce((e, t) => e + t, 0));
29
- let u = {
18
+ let [t, f] = y({}), { widths: m, heights: g } = c(), { pagesRef: _ } = a(), { scrollMode: v } = n(), { pageRotate: S } = s(), { currentZoom: C } = o(), { viewMode: w } = r(), { pageScrollElementRef: T, virtualScrollableElementRef: E } = i(), { scrollBehavior: D } = l(), O = h((e, n, r) => {
19
+ let i = r ?? { behavior: D }, a = E || T;
20
+ if (!_ || !a) return;
21
+ let o = t[e]?.[n];
22
+ if (!o) return;
23
+ let s = u({
24
+ pageDimensions: {
25
+ widths: m,
26
+ heights: g
27
+ },
28
+ viewportWidth: a.clientWidth,
29
+ viewportHeight: a.clientHeight,
30
+ scrollMode: v,
31
+ viewMode: w,
32
+ focusedPage: e
33
+ }), c = d(s, e);
34
+ if (!c) return;
35
+ let l = {
30
36
  height: g[e - 1],
31
37
  width: m[e - 1]
32
- }, f = S[e], { left: h, top: y } = p(u, _, s, f, C), b = l + h, x = c + y, O = {
38
+ }, f = S[e], { left: h, top: y } = p(l, _, o, f, C), b = s.offsetLeft + c.left + h, x = s.offsetTop + c.top + y, O = {
33
39
  left: Math.max(b, 0),
34
40
  top: Math.max(x, 0)
35
41
  };
36
- o.scrollTo({
42
+ a.scrollTo({
37
43
  ...O,
38
- behavior: a.behavior
44
+ behavior: i.behavior
39
45
  });
40
46
  }, [
41
- n,
47
+ C,
48
+ t,
42
49
  g,
43
- m,
44
- _,
45
50
  S,
46
- C,
51
+ _,
52
+ D,
47
53
  v,
48
- D
54
+ w,
55
+ m
49
56
  ]), k = h((e, t) => {
50
57
  f((n) => {
51
58
  let r = {
@@ -78,13 +85,13 @@ var x = m(void 0), S = ({ children: e }) => {
78
85
  updateElement: k,
79
86
  clearElements: A,
80
87
  removeElement: j,
81
- elementList: n,
88
+ elementList: t,
82
89
  scrollToElement: O
83
90
  },
84
91
  children: e
85
92
  });
86
93
  }, C = () => {}, w = () => {
87
- let t = g(x), { type: r, validating: i } = f(), a = v(0), o = _(() => {
94
+ let n = g(x), { type: r, validating: i } = f(), a = v(0), o = _(() => {
88
95
  if (i !== !1) return {
89
96
  updateElement: C,
90
97
  clearElements: C,
@@ -94,22 +101,22 @@ var x = m(void 0), S = ({ children: e }) => {
94
101
  };
95
102
  if (r === e.Developer) return {
96
103
  updateElement: () => {
97
- a.current === 0 && (console.error(n), a.current++);
104
+ a.current === 0 && (console.error(t), a.current++);
98
105
  },
99
106
  clearElements: () => {
100
- a.current === 0 && (console.error(n), a.current++);
107
+ a.current === 0 && (console.error(t), a.current++);
101
108
  },
102
109
  removeElement: () => {
103
- a.current === 0 && (console.error(n), a.current++);
110
+ a.current === 0 && (console.error(t), a.current++);
104
111
  },
105
112
  elementList: {},
106
113
  scrollToElement: () => {
107
- a.current === 0 && (console.error(n), a.current++);
114
+ a.current === 0 && (console.error(t), a.current++);
108
115
  }
109
116
  };
110
117
  }, [r, i]);
111
- if (!t) throw Error("useElementPageContext must be used within a ElementPageProvider");
112
- return o || t;
118
+ if (!n) throw Error("useElementPageContext must be used within a ElementPageProvider");
119
+ return o || n;
113
120
  };
114
121
  //#endregion
115
122
  export { x as ElementPageContext, S as ElementPageProvider, w as useElementPageContext };
@@ -2,7 +2,7 @@ import { LicenseType as e } from "../utils/types.js";
2
2
  import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as t } from "../utils/const.js";
3
3
  import { usePagesRotateContext as n } from "./PagesRotateContext.js";
4
4
  import { useSmoothScrollContext as r } from "./SmoothScrollContext.js";
5
- import { r as i } from "../PaginationContext-B3qzCYJu.js";
5
+ import { r as i } from "../PaginationContext-DIzsZhFd.js";
6
6
  import { useThumbnailContext as a } from "./ThumbnailsContext.js";
7
7
  import { useLicenseContext as o } from "./LicenseContext.js";
8
8
  import { createContext as s, useCallback as c, useContext as l, useEffect as u, useMemo as d, useRef as f, useState as p } from "react";
@@ -1,2 +1,2 @@
1
- import { n as e, r as t, t as n } from "../PaginationContext-B3qzCYJu.js";
1
+ import { n as e, r as t, t as n } from "../PaginationContext-DIzsZhFd.js";
2
2
  export { n as PaginationContext, e as PaginationProvider, t as usePaginationContext };
@@ -1,42 +1,44 @@
1
- import { r as e } from "../PaginationContext-B3qzCYJu.js";
1
+ import { r as e } from "../PaginationContext-DIzsZhFd.js";
2
2
  import { Queue as t } from "../utils/Queue.js";
3
3
  import { renderPage as n } from "../utils/renderPage.js";
4
4
  import { createContext as r, useCallback as i, useContext as a, useEffect as o, useMemo as s, useRef as c, useState as l } from "react";
5
5
  import { jsx as u } from "react/jsx-runtime";
6
6
  //#region lib/contexts/RenderQueueProvider.tsx
7
7
  var d = r(null), f = ({ children: r }) => {
8
- let a = c(!1), [f, p] = l([]), m = i((e) => {
9
- p((t) => [...t, {
8
+ let a = c(!1), f = c(/* @__PURE__ */ new Map()), [p, m] = l([]), h = i((e) => {
9
+ m((t) => [...t, {
10
10
  id: e.page.pageNumber.toString(),
11
11
  data: e,
12
12
  priority: 0
13
13
  }]);
14
- }, []), h = s(() => new t(m), [m]), { focusedPage: g } = e(), _ = i((e) => {
14
+ }, []), g = s(() => new t(h), [h]), { focusedPage: _ } = e(), v = i((e) => {
15
15
  a.current = !0;
16
- let t = n(e.data.page, e.data.canvasElem, e.data.options);
17
- return e.data.onRenderTask?.(t), t.promise.then(() => {
16
+ let t = f.current.get(e.id);
17
+ t && (t.cancel(), f.current.delete(e.id));
18
+ let r = n(e.data.page, e.data.canvasElem, e.data.options);
19
+ return f.current.set(e.id, r), e.data.onRenderTask?.(r), r.promise.then(() => {
18
20
  e.data.canvasElem.hidden = !1, e.data.onLoaded && e.data.onLoaded();
19
21
  }).finally(() => {
20
- e.data.onRenderTask?.(null);
22
+ f.current.delete(e.id), e.data.onRenderTask?.(null);
21
23
  });
22
24
  }, []);
23
25
  return o(() => {
24
- g && (h.changePagePriority(`^page-${g}`, 0), h.changePagePriority(`^thumbnail-${g}`, 1));
25
- }, [g]), o(() => {
26
- if (h.isEmpty() || a.current) return;
26
+ _ && (g.changePagePriority(`^page-${_}`, 0), g.changePagePriority(`^thumbnail-${_}`, 1));
27
+ }, [_]), o(() => {
28
+ if (g.isEmpty() || a.current) return;
27
29
  let e = () => {
28
- let t = h.dequeue();
29
- t ? _(t).catch(() => {}).finally(() => {
30
+ let t = g.dequeue();
31
+ t ? v(t).catch(() => {}).finally(() => {
30
32
  e();
31
- }) : (a.current = !1, p(h.peekAll()));
33
+ }) : (a.current = !1, m(g.peekAll()));
32
34
  };
33
35
  e();
34
36
  }, [
35
- h,
36
- _,
37
- f
37
+ g,
38
+ v,
39
+ p
38
40
  ]), /* @__PURE__ */ u(d.Provider, {
39
- value: h,
41
+ value: g,
40
42
  children: r
41
43
  });
42
44
  }, p = () => {
@@ -1,18 +1,37 @@
1
- import { createContext as e, useContext as t } from "react";
2
- import { jsx as n } from "react/jsx-runtime";
1
+ import { useDocumentContext as e } from "./RPDocumentContext.js";
2
+ import { createContext as t, useCallback as n, useContext as r, useEffect as i, useMemo as a, useRef as o } from "react";
3
+ import { jsx as s } from "react/jsx-runtime";
3
4
  //#region lib/contexts/RenderedPagesCache.tsx
4
- var r = e({
5
+ var c = t({
5
6
  viewports: /* @__PURE__ */ new Map(),
6
- pages: /* @__PURE__ */ new Map()
7
- }), i = () => t(r), a = ({ children: e }) => {
8
- let t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
9
- return /* @__PURE__ */ n(r.Provider, {
10
- value: {
11
- viewports: t,
12
- pages: i
13
- },
14
- children: e
7
+ pages: /* @__PURE__ */ new Map(),
8
+ hasRenderedPage: () => !1,
9
+ markRenderedPage: () => {},
10
+ clearRenderedPages: () => {}
11
+ }), l = () => r(c), u = ({ children: t }) => {
12
+ let { pdfSrc: r } = e(), l = o(/* @__PURE__ */ new Map()), u = o(/* @__PURE__ */ new Map()), d = o(/* @__PURE__ */ new Set()), f = n((e) => d.current.has(e), []), p = n((e) => {
13
+ d.current.add(e);
14
+ }, []), m = n(() => {
15
+ d.current.clear();
16
+ }, []);
17
+ i(() => {
18
+ d.current.clear();
19
+ }, [r]);
20
+ let h = a(() => ({
21
+ viewports: l.current,
22
+ pages: u.current,
23
+ hasRenderedPage: f,
24
+ markRenderedPage: p,
25
+ clearRenderedPages: m
26
+ }), [
27
+ m,
28
+ f,
29
+ p
30
+ ]);
31
+ return /* @__PURE__ */ s(c.Provider, {
32
+ value: h,
33
+ children: t
15
34
  });
16
35
  };
17
36
  //#endregion
18
- export { r as RenderedPagesCacheContext, a as RenderedPagesCacheProvider, i as useRenderedPagesCache };
37
+ export { c as RenderedPagesCacheContext, u as RenderedPagesCacheProvider, l as useRenderedPagesCache };
@@ -2,7 +2,6 @@ import { createContext as e, useContext as t, useState as n } from "react";
2
2
  import { jsx as r } from "react/jsx-runtime";
3
3
  //#region lib/contexts/VirtualScrollContext.tsx
4
4
  var i = e({
5
- getVirtualScrollRef: () => {},
6
5
  getPageScrollElementRef: () => {},
7
6
  getVirtualScrollableElementRef: () => {},
8
7
  scrollPosition: {
@@ -16,25 +15,23 @@ var i = e({
16
15
  },
17
16
  setTotalInnerDimensions: () => {}
18
17
  }), a = () => t(i), o = ({ children: e }) => {
19
- let [t, a] = n(), [o, s] = n(), [c, l] = n(), [u, d] = n({
18
+ let [t, a] = n(), [o, s] = n(), [c, l] = n({
20
19
  scrollTop: 0,
21
20
  scrollLeft: 0
22
- }), [f, p] = n({
21
+ }), [u, d] = n({
23
22
  height: 0,
24
23
  width: 0
25
24
  });
26
25
  return /* @__PURE__ */ r(i.Provider, {
27
26
  value: {
28
- virtualScrollRef: t,
29
- getVirtualScrollRef: a,
30
- pageScrollElementRef: c,
31
- getPageScrollElementRef: l,
32
- virtualScrollableElementRef: o,
33
- getVirtualScrollableElementRef: s,
34
- scrollPosition: u,
35
- setScrollPosition: d,
36
- totalInnerDimensions: f,
37
- setTotalInnerDimensions: p
27
+ pageScrollElementRef: o,
28
+ getPageScrollElementRef: s,
29
+ virtualScrollableElementRef: t,
30
+ getVirtualScrollableElementRef: a,
31
+ scrollPosition: c,
32
+ setScrollPosition: l,
33
+ totalInnerDimensions: u,
34
+ setTotalInnerDimensions: d
38
35
  },
39
36
  children: e
40
37
  });
@@ -52,6 +52,8 @@ var e = {
52
52
  pageScrollingTooltip: "Enable page scrolling",
53
53
  verticalScrollingLabel: "Vertical scrolling",
54
54
  verticalScrollingTooltip: "Enable vertical scrolling",
55
+ horizontalScrollingLabel: "Horizontal scrolling",
56
+ horizontalScrollingTooltip: "Enable horizontal scrolling",
55
57
  horizontalLabel: "Horizontal scrolling",
56
58
  horizontalTooltip: "Enable horizontal scrolling",
57
59
  wrappedScrollingLabel: "Wrapped scrolling",
@@ -138,6 +140,8 @@ var e = {
138
140
  pageScrollingTooltip: "启用页面滚动",
139
141
  verticalScrollingLabel: "垂直滚动",
140
142
  verticalScrollingTooltip: "启用垂直滚动",
143
+ horizontalScrollingLabel: "水平滚动",
144
+ horizontalScrollingTooltip: "启用水平滚动",
141
145
  horizontalLabel: "水平滚动",
142
146
  horizontalTooltip: "启用水平滚动",
143
147
  wrappedScrollingLabel: "环绕滚动",
@@ -224,6 +228,8 @@ var e = {
224
228
  pageScrollingTooltip: "Abilita lo scorrimento delle pagine",
225
229
  verticalScrollingLabel: "Scorrimento verticale",
226
230
  verticalScrollingTooltip: "Abilita lo scorrimento verticale",
231
+ horizontalScrollingLabel: "Scorrimento orizzontale",
232
+ horizontalScrollingTooltip: "Abilita lo scorrimento orizzontale",
227
233
  horizontalLabel: "Scorrimento orizzontale",
228
234
  horizontalTooltip: "Abilita lo scorrimento orizzontale",
229
235
  wrappedScrollingLabel: "Scorrimento avvolto",
@@ -310,6 +316,8 @@ var e = {
310
316
  pageScrollingTooltip: "Ativar rolagem de página",
311
317
  verticalScrollingLabel: "Rolagem vertical",
312
318
  verticalScrollingTooltip: "Ativar rolagem vertical",
319
+ horizontalScrollingLabel: "Rolagem horizontal",
320
+ horizontalScrollingTooltip: "Ativar rolagem horizontal",
313
321
  horizontalLabel: "Rolagem horizontal",
314
322
  horizontalTooltip: "Ativar rolagem horizontal",
315
323
  wrappedScrollingLabel: "Rolagem envolvida",
@@ -396,6 +404,8 @@ var e = {
396
404
  pageScrollingTooltip: "เปิดใช้การเลื่อนภายในหน้า",
397
405
  verticalScrollingLabel: "การเลื่อนแนวตั้ง",
398
406
  verticalScrollingTooltip: "เปิดใช้การเลื่อนแนวตั้ง",
407
+ horizontalScrollingLabel: "การเลื่อนแนวนอน",
408
+ horizontalScrollingTooltip: "เปิดใช้การเลื่อนแนวนอน",
399
409
  horizontalLabel: "การเลื่อนแนวนอน",
400
410
  horizontalTooltip: "เปิดใช้การเลื่อนแนวนอน",
401
411
  wrappedScrollingLabel: "การเลื่อนแบบแรพ",
@@ -482,6 +492,8 @@ var e = {
482
492
  pageScrollingTooltip: "Seitenweises Blättern aktivieren",
483
493
  verticalScrollingLabel: "Vertikaler Bildlauf",
484
494
  verticalScrollingTooltip: "Vertikalen Bildlauf aktivieren",
495
+ horizontalScrollingLabel: "Horizontaler Bildlauf",
496
+ horizontalScrollingTooltip: "Horizontalen Bildlauf aktivieren",
485
497
  horizontalLabel: "Horizontaler Bildlauf",
486
498
  horizontalTooltip: "Horizontalen Bildlauf aktivieren",
487
499
  wrappedScrollingLabel: "Bildlauf mit Umbruch",
@@ -1,5 +1,5 @@
1
1
  import { useViewModeContext as e } from "./contexts/ViewModeContext.js";
2
- import { r as t } from "./PaginationContext-B3qzCYJu.js";
2
+ import { r as t } from "./PaginationContext-DIzsZhFd.js";
3
3
  import { useLocalizationContext as n } from "./contexts/LocalizationContext.js";
4
4
  import { t as r } from "./Button-BNlmxWrV.js";
5
5
  import { t as i } from "./RPTooltip-COLVx-C_.js";
package/dist/main.js CHANGED
@@ -4,7 +4,7 @@ import { useScrollModeContext as s } from "./contexts/ScrollModeContext.js";
4
4
  import { useViewModeContext as c } from "./contexts/ViewModeContext.js";
5
5
  import { useRotationContext as l } from "./contexts/RotationContext.js";
6
6
  import { useZoomContext as u } from "./contexts/ZoomContext.js";
7
- import { r as d } from "./PaginationContext-B3qzCYJu.js";
7
+ import { r as d } from "./PaginationContext-DIzsZhFd.js";
8
8
  import { useDarkModeContext as f } from "./contexts/DarkModeContext.js";
9
9
  import { useSelectionModeContext as p } from "./contexts/SelectionModeContext.js";
10
10
  import { useFullScreenContext as m } from "./contexts/FullScreenContext.js";
@@ -16,7 +16,7 @@ import { useHighlightContext as y } from "./contexts/HighlightContext.js";
16
16
  import { useElementPageContext as b } from "./contexts/ElementPageContext.js";
17
17
  import { useElementThumbnailContext as x } from "./contexts/ElementThumbnailContext.js";
18
18
  import { RPProvider as S } from "./components/RPProvider.js";
19
- import { t as C } from "./RPPages-5yXo7yhq.js";
19
+ import { t as C } from "./RPPages-BQw330_L.js";
20
20
  import { useFileDownload as w } from "./utils/hooks/useFileDownload.js";
21
21
  import { RPTheme as T } from "./components/RPTheme.js";
22
22
  import { RPConfig as E } from "./components/RPConfig.js";
@@ -46,7 +46,7 @@ import { RotateCounterclockwiseTool as Y } from "./components/layout/toolbar/too
46
46
  import { SelectionModeSwitcherTool as X } from "./components/layout/toolbar/tools/SelectionModeSwitcherTool.js";
47
47
  import { SinglePageTool as Z } from "./components/layout/toolbar/tools/SinglePageTool.js";
48
48
  import { DualPageTool as Q } from "./components/layout/toolbar/tools/DualPageTool.js";
49
- import { n as $, r as ee, t as te } from "./main-CdlJS0xf.js";
49
+ import { n as $, r as ee, t as te } from "./main-7sMXtgRg.js";
50
50
  import { PageScrollingTool as ne } from "./components/layout/toolbar/tools/PageScrollingTool.js";
51
51
  import { VerticalScrollingTool as re } from "./components/layout/toolbar/tools/VerticalScrollingTool.js";
52
52
  import { HorizontalScrollingTool as ie } from "./components/layout/toolbar/tools/HorizontalScrollingTool.js";
@@ -0,0 +1,5 @@
1
+ //#endregion
2
+ //#region lib/assets/style.ts
3
+ var e = "\nbutton{font-family:inherit}.hiddenCanvasElement{width:0;height:0;display:none;position:absolute;top:0;left:0}\n._rp-button_xxds9_1{border-radius:var(--rp-button-border-radius);padding:var(--rp-button-padding);color:var(--rp-text-color);cursor:pointer;font-size:var(--rp-icon-font-size);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}._rp-button_xxds9_1[aria-disabled=true]{opacity:.5;cursor:not-allowed}._rp-button_xxds9_1:hover:not(:disabled),._rp-button-active_xxds9_20:not(:disabled){background:var(--rp-button-hover-background)}._rp-button_xxds9_1:disabled{cursor:not-allowed;color:var(--rp-icon-disabled)}._rp-button_xxds9_1:focus-visible{outline-color:var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:0;outline-style:solid;transition:none}\n._rp-checkbox_1vwg8_1{all:unset;border-radius:var(--rp-checkbox-border-radius);border-color:var(--rp-checkbox-border-color);width:16px;height:16px;box-shadow:0 2px 10px var(--black-a7);background-color:#fff;border-style:solid;border-width:1px;justify-content:center;align-items:center;margin-right:8px;display:flex}._rp-checkbox_1vwg8_1:focus{outline:1px solid var(--rp-primary-color)}._rp-checkbox_1vwg8_1[data-state=checked]{background-color:var(--rp-primary-color)}._rp-checkbox-indicator_1vwg8_25{color:var(--rp-checkbox-indicator-color)}\n._rp-dropdown-content_1vzkq_1{font-family:var(--rp-font-family);font-size:var(--rp-dropdown-font-size);background-color:var(--rp-dropdown-background-color);border-radius:var(--rp-dropdown-border-radius);will-change:transform, opacity;min-width:260px;z-index:calc(var(--rp-base-z-index,1) * 5);animation-duration:.4s;animation-timing-function:cubic-bezier(.16,1,.3,1);box-shadow:0 2px 12px #00000026}._rp-dropdown-content_1vzkq_1[data-side=top]{animation-name:_slideDownAndFade_1vzkq_1}._rp-dropdown-content_1vzkq_1[data-side=right]{animation-name:_slideLeftAndFade_1vzkq_1}._rp-dropdown-content_1vzkq_1[data-side=bottom]{animation-name:_slideUpAndFade_1vzkq_1}._rp-dropdown-content_1vzkq_1[data-side=left]{animation-name:_slideRightAndFade_1vzkq_1}._rp-dropdown-arrow_1vzkq_30{fill:var(--rp-dropdown-background-color)}@keyframes _slideUpAndFade_1vzkq_1{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes _slideRightAndFade_1vzkq_1{0%{opacity:0;transform:translate(-2px)}to{opacity:1;transform:translate(0)}}@keyframes _slideDownAndFade_1vzkq_1{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes _slideLeftAndFade_1vzkq_1{0%{opacity:0;transform:translate(2px)}to{opacity:1;transform:translate(0)}}\n._rp-input_dun7b_1{font-family:var(--rp-font-family);border-width:1px;border-color:var(--rp-input-border-color,transparent);border-radius:var(--rp-input-border-radius);min-height:2rem;color:var(--rp-text-color);background:var(--rp-input-background-color);padding:var(--rp-input-padding);box-sizing:border-box;border-style:solid;outline:none}._rp-input_dun7b_1::placeholder{color:var(--rp-input-placeholder-color)}._rp-input_dun7b_1[data-icon=true]{padding-left:calc(1rem + 14px)}._rp-input_dun7b_1:focus,._rp-input_dun7b_1:focus-visible{border-color:var(--rp-outline-color,var(--rp-primary-color))}._rp-input-wrapper_dun7b_28{position:relative}._rp-input-label_dun7b_32{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._rp-input-icon_dun7b_44{color:var(--rp-input-placeholder-color);justify-content:center;align-items:center;padding-left:.5rem;padding-right:.5rem;display:flex;position:absolute;top:0;bottom:0}\n._rp-loading-overlay_8gxoj_1{z-index:100;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}._rp-loading-modal_8gxoj_14{background:var(--rp-print-progress-background);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-width:240px;min-height:120px;padding:24px;display:flex;box-shadow:0 4px 6px #0000001a}._rp-loading-title_8gxoj_27{text-align:center;color:var(--rp-print-progress-color);margin-bottom:16px;font-family:system-ui,-apple-system,sans-serif;font-size:14px}._rp-loading-progress-bar_8gxoj_35{background:#f0f0f0;border-radius:32px;width:100%;height:4px;margin-bottom:16px;position:relative;overflow:hidden}._rp-loading-progress_8gxoj_35{background:linear-gradient(90deg, color-mix(in srgb, var(--rp-primary-color) 80%, black) 0%, var(--rp-primary-color) 50%, color-mix(in srgb, var(--rp-primary-color) 80%, white) 100%);border-radius:32px;height:100%;position:absolute}._rp-loading-cancel-button_8gxoj_55{width:70px;color:var(--rp-text-color);border-radius:var(--rp-button-border-radius);cursor:pointer;border:none;border:1px solid var(--rp-print-progress-cancel-button-border-color);background:0 0;padding:8px;font-family:system-ui,-apple-system,sans-serif;transition:background-color .2s}._rp-loading-cancel-button_8gxoj_55:hover{opacity:.6}@keyframes _loading_8gxoj_1{0%{transform:translate(-100%)}50%{transform:translate(100%)}to{transform:translate(-100%)}}\n._rp-password-overlay_1xibg_1{z-index:100;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}._rp-password-modal_1xibg_13{background:var(--rp-password-background-color);border:1px solid var(--rp-password-border-color);border-radius:8px;flex-direction:column;justify-content:start;max-width:360px;margin-left:10px;margin-right:10px;padding:24px;display:flex;box-shadow:0 2px 12px #00000026}._rp-password-title_1xibg_27{font-family:var(--rp-font-family);color:var(--rp-password-title-font-color);margin-bottom:16px;font-size:16px;font-weight:500}._rp-password-content_1xibg_35{font-size:14px;font-family:var(--rp-font-family);color:var(--rp-password-content-font-color)}._rp-password-form_1xibg_41{margin-top:32px}._rp-password-label_1xibg_45{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._rp-password-input_1xibg_57{border:1px solid var(--rp-password-input-border-color);border-radius:var(--rp-input-border-radius);box-sizing:border-box;background-color:var(--rp-input-background-color);width:100%;min-height:32px;caret-color:var(--rp-password-input-color);color:var(--rp-password-input-font-color);padding:7.5px;font-size:14px}._rp-password-input_1xibg_57::placeholder{color:var(--rp-password-input-placeholder-color)}._rp-password-input-invalid_1xibg_74{border-color:#ff2f61}._rp-password-message-invalid_1xibg_78{color:#ff2f61;min-height:20px;margin-top:4px}._rp-password-submit-button_1xibg_84{text-align:center;border-radius:var(--rp-password-button-border-radius);background-color:var(--rp-password-button-background-color);width:100%;min-height:35px;color:var(--rp-password-button-font-color);cursor:pointer;font-family:var(--rp-font-family);border:1px solid var(--rp-password-button-border-color);justify-content:center;align-items:center;margin-top:8px;padding:8px;transition:background-color .2s;display:flex}\n._tooltipContent_12gjy_1{border-radius:var(--rp-tooltip-border-radius);padding:var(--rp-tooltip-padding);background-color:var(--rp-tooltip-background-color);z-index:1000}._tooltipArrow_12gjy_8{fill:var(--rp-tooltip-background-color)}._tooltipContent_12gjy_1 span{color:var(--rp-tooltip-font-color);font-size:var(--rp-tooltip-font-size)}@keyframes _fadeIn_12gjy_1{0%{opacity:0}to{opacity:1}}\n._rp-drop-zone_1sc50_1{z-index:100;background-color:var(--rp-drop-zone-background-color);font-size:var(--rp-drop-zone-font-size);color:var(--rp-drop-zone-font-color);border:dashed var(--rp-drop-zone-border) 1px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}._rp-drop-zone-transparent_1sc50_15{z-index:100;background-color:#0000;position:absolute;inset:0}\n._rp-pages_ruuiz_1{justify-content:flex-start;display:flex}._rp-pages_ruuiz_1:not(._rp-page-scrolling-wrapper_ruuiz_6):not(._rp-pages-flow_ruuiz_6)>div{margin-left:var(--rp-document-left-offset,0px);height:var(--rp-pages-height)!important;width:var(--rp-pages-width)!important}._rp-pages-flow_ruuiz_6{position:relative;overflow:auto}._rp-document-wrapper_ruuiz_17{flex:none;position:relative}._rp-page-row_ruuiz_22{overflow:visible}._rp-pages-horizontal-scroll_ruuiz_26{display:block}._rp-not-supported-list_ruuiz_30{margin:0;padding:0 0 0 .5em;list-style-type:disc;list-style-position:inside}._rp-pages-container_ruuiz_38{outline-width:0;height:100%;position:relative}._rp-pages-container_ruuiz_38 .ignore-hover:focus,._rp-pages-container_ruuiz_38 :not(:hover):focus-visible,._rp-pages-container_ruuiz_38 :not(:hover):focus:focus-visible{outline-color:var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:0px;outline-width:1px;outline-style:solid;transition:none}._rp-pages-container_ruuiz_38 .highlight.appended{border-radius:var(--rp-text-layer-highlight-border-radius);background-color:var(--rp-highlight-background-color);opacity:.5}._rp-pages-container_ruuiz_38 .highlight.appended.begin{border-radius:var(--rp-text-layer-highlight-border-radius) 0 0 var(--rp-text-layer-highlight-border-radius)}._rp-pages-container_ruuiz_38 .highlight.appended.middle{border-radius:0}._rp-pages-container_ruuiz_38 .highlight.appended.end{border-radius:0 var(--rp-text-layer-highlight-border-radius) var(--rp-text-layer-highlight-border-radius) 0}._rp-pages-container_ruuiz_38 .highlight.appended.selected{background-color:var(--rp-current-highlight-background-color)}._rp-page-scrolling-wrapper_ruuiz_6{position:relative;overflow:auto}._rp-viewer_ruuiz_80{height:100%;position:relative}._rp-cursor-grab_ruuiz_85{cursor:grab;-webkit-user-select:none;user-select:none}._rp-cursor-grabbing_ruuiz_93{cursor:grabbing;-webkit-user-select:none;user-select:none}._rp-loader_ruuiz_101{background-color:var(--rp-loader-backdrop-color);justify-content:center;align-items:center;display:flex}._rp-pages-container_ruuiz_38{background:var(--rp-pages-background-color)}._rp-not-supported_ruuiz_30{justify-content:center;align-items:center;width:100%;height:100%;display:flex}._rp-not-supported-content_ruuiz_120{max-width:250px;font-weight:400;line-height:1.5}._rp-load-error_ruuiz_126{justify-content:center;align-items:center;width:100%;height:100%;display:flex}._rp-load-error-message_ruuiz_134{text-align:center;max-width:280px;font-weight:400;line-height:1.5}\n._rp-loader-icon_7y2fm_1{width:40px;height:40px;animation:1s linear infinite _spin_7y2fm_1}@media (prefers-reduced-motion:reduce){._rp-loader-icon_7y2fm_1{animation:none}}@keyframes _spin_7y2fm_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n._rp-container_f63gc_1{font-family:var(--rp-font-family);height:600px;color:var(--rp-text-color);border-radius:var(--rp-border-radius);position:relative;overflow:hidden}._rp-container_f63gc_1:focus,._rp-container_f63gc_1:focus-within{outline:var(--rp-container-focus-outline-width) solid var(--rp-container-focus-outline-color);outline-offset:var(--rp-container-focus-outline-offset)}\n._rp-layout_1h20a_1{height:100%}._rp-layout-wrapper_1h20a_5{flex:1;height:100%;position:relative}._rp-content_1h20a_11{width:100%;height:calc(100% - var(--rp-toolbar-height));display:flex;overflow:hidden}._rp-sidebar_1h20a_18{flex-shrink:0;display:flex}._rp-pages_1h20a_23{flex:1;min-width:0;height:100%}._rp-container_1h20a_29{height:100%}._rp-loader_1h20a_33{background-color:var(--rp-loader-backdrop-color)}._rp-theme-variables_1h20a_37{--rp-font-family:inherit;--rp-primary-color:#34affc;--rp-border-radius:4px;--rp-text-color:#1c2024;--rp-outline-color:var(--rp-primary-color);--rp-font-size:16px;--rp-drop-mask-background-color:#fafafa;--rp-loader-backdrop-color:transparent;--rp-icon-disabled:#c6ccd2;--rp-icon-font-size:calc(var(--rp-font-size) * 1.25);--rp-toolbar-background:#e2e6e9;--rp-toolbar-border-color:#c6ccd2;--rp-toolbar-padding:.25rem;--rp-toolbar-gap:.25rem;--rp-toolbar-size:48px;--rp-sidebar-width:48px;--rp-thumbnail-border-color:#e2e6e9;--rp-thumbnail-background-color:#fff;--rp-thumbnail-active-color:#0003;--rp-thumbnail-padding-y:16px;--rp-button-hover-background:#0000001a;--rp-button-padding:4px;--rp-button-border-radius:4px;--rp-input-padding:.5rem;--rp-input-border-radius:calc(var(--rp-border-radius) + 2px);--rp-input-background-color:#fff;--rp-input-placeholder-color:#75767c;--rp-search-input-border-color:#878c8f;--rp-pages-background-color:#fff;--rp-page-shadow:0px 2px 12px 0px #00000026;--rp-page-outline:none;--rp-page-outline-offset:0;--rp-annotation-layer__link-hover-background:#ff03;--rp-dropdown-background-color:#f1f2f4;--rp-dropdown-padding:4px;--rp-dropdown-hover-background-color:#0000001a;--rp-dropdown-separator-color:#e2e6e9;--rp-dropdown-separator-margin:4px;--rp-dropdown-padding-menu-item:8px;--rp-dropdown-font-size:calc(var(--rp-font-size) * .875);--rp-dropdown-border-radius:calc(var(--rp-border-radius) + 2px);--rp-search-tool-dropdown-padding:8px;--rp-popover-font-size:calc(var(--rp-font-size) * .875);--rp-popover-background-color:#f1f2f4;--rp-popover-color:#1c2024;--rp-popover-border-color:#e2e6e9;--rp-popover-border-radius:calc(var(--rp-border-radius) + 2px);--rp-overlay-background-color:#000c;--rp-dialog-background-color:#f1f2f4;--rp-properties-divider-color:#e2e6e9;--rp-properties-divider-margin:16px;--rp-property-item-gap:12px;--rp-dialog-title-color:#1c2024;--rp-property-item-label-color:#596673;--rp-property-close-icon-size:calc(var(--rp-font-size) * 1.25);--rp-property-item-font-size:calc(var(--rp-font-size) * .875);--rp-property-item-font-weight:400;--rp-dialog-title-font-size:calc(var(--rp-font-size) * 1.125);--rp-dialog-title-font-weight:600;--rp-menu-item-icon-size:16px;--rp-print-progress-background:#f1f2f4;--rp-print-progress-color:#1c2024;--rp-print-progress-cancel-button-border-color:#919497;--rp-drop-zone-border:#c6ccd2;--rp-drop-zone-font-color:#677481;--rp-drop-zone-font-size:calc(var(--rp-font-size) * 1.125);--rp-drop-zone-background-color:#fafafa;--rp-checkbox-border-radius:var(--rp-border-radius);--rp-checkbox-border-color:#878c8f;--rp-checkbox-indicator-color:white;--rp-highlight-background-color:#ff0;--rp-text-layer-highlight-border-radius:var(--rp-border-radius);--rp-current-highlight-background-color:red;--rp-tooltip-background-color:#1c2024;--rp-tooltip-border-radius:var(--rp-border-radius);--rp-tooltip-font-color:#fff;--rp-tooltip-font-size:14px;--rp-tooltip-padding:8px 8px;--rp-password-background-color:#fff;--rp-password-title-font-color:#1c2024;--rp-password-content-font-color:#596673;--rp-password-input-border-color:#919497;--rp-password-input-placeholder-color:#75767c;--rp-password-input-font-color:#000;--rp-password-button-background-color:#0075cb;--rp-password-button-font-color:#fff;--rp-password-button-border-color:#0075cb;--rp-password-border-color:#e2e6e9;--rp-password-button-border-radius:8px;--rp-container-focus-outline-width:0px;--rp-container-focus-outline-color:var(--rp-primary-color);--rp-container-focus-outline-offset:2px;--rp-skip-link-font-size:14px;--rp-skip-link-color:#fff;--rp-skip-link-background-color:#0075cb;--rp-skip-link-border-color:#005da5}._rp-theme-variables_1h20a_37._rp-dark-mode_1h20a_158{--rp-primary-color:#34affc;--rp-text-color:#fff;--rp-drop-mask-background-color:#1c2024;--rp-loader-backdrop-color:transparent;--rp-icon-disabled:#596673;--rp-toolbar-background:#2d3339;--rp-toolbar-border-color:#434c56;--rp-thumbnail-border-color:#2d3339;--rp-thumbnail-background-color:#1c2024;--rp-thumbnail-active-color:#0000004d;--rp-button-hover-background:#0000004d;--rp-input-background-color:#1c2024;--rp-search-input-border-color:#878c8f;--rp-input-placeholder-color:#868692;--rp-pages-background-color:#1c2024;--rp-page-shadow:0px 2px 12px 0px #00000080;--rp-dropdown-background-color:#434c56;--rp-dropdown-hover-background-color:#0000001a;--rp-dropdown-separator-color:#2d3339;--rp-popover-background-color:#434c56;--rp-popover-color:var(--rp-text-color);--rp-popover-border-color:#2d3339;--rp-dialog-background-color:#434c56;--rp-properties-divider-color:#2d3339;--rp-property-item-label-color:#c6ccd2;--rp-dialog-title-color:#fff;--rp-print-progress-background:#434c56;--rp-print-progress-color:#fff;--rp-print-progress-cancel-button-border-color:#919497;--rp-drop-zone-background-color:#1c2024;--rp-drop-zone-border:#434c56;--rp-drop-zone-font-color:#7b8896;--rp-tooltip-background-color:#5b6d7f;--rp-password-background-color:#434c56;--rp-password-title-font-color:#fff;--rp-password-content-font-color:#c6ccd2;--rp-password-input-border-color:#9399a0;--rp-password-input-placeholder-color:#85878e;--rp-password-input-font-color:#fff;--rp-password-button-background-color:#0075cb;--rp-password-button-font-color:#fff;--rp-password-button-border-color:#0075cb;--rp-password-border-color:#2d3339;--rp-skip-link-font-size:14px;--rp-skip-link-color:#fff;--rp-skip-link-background-color:#0075cb;--rp-skip-link-border-color:#005da5}\n._rp-wrapper-layout_2cghq_1{height:100%;position:relative}\n._rp-skip-link_17rgz_1{z-index:10000;border:1px solid var(--rp-skip-link-border-color);border-radius:var(--rp-border-radius);background:var(--rp-skip-link-background-color);min-width:200px;min-height:36px;color:var(--rp-skip-link-color);font-size:var(--rp-skip-link-font-size);white-space:normal;text-align:center;clip:rect(0, 0, 0, 0);clip-path:inset(50%);justify-content:center;align-items:center;padding-inline:6px;font-weight:600;text-decoration:none;display:flex;position:absolute;top:6px;left:6px;overflow:hidden}._rp-skip-link_17rgz_1:focus{clip:auto;clip-path:none;overflow:visible}._rp-skip-link_17rgz_1:focus:not(:focus-visible),._rp-skip-link_17rgz_1:focus-visible{outline:1px solid var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:1px}._rp-skip-link_17rgz_1:hover{background:var(--rp-skip-link-border-color);border-color:var(--rp-skip-link-border-color)}\n._rp-sidebar-content-wrapper_ppg43_1{height:100%;display:flex;position:relative;overflow:hidden}._rp-sidebar-content_ppg43_1{background:var(--rp-toolbar-background);min-width:var(--rp-sidebar-width);max-width:var(--rp-sidebar-width);text-align:center;flex-shrink:0;padding-top:.75rem}._rp-thumbnails-wrapper_ppg43_17{width:var(--rp-thumbnail-width,auto);flex-shrink:0;transition:width .15s;position:relative;overflow:hidden}._rp-thumbnails-wrapper_ppg43_17._rp-thumbnails-wrapper-dragging_ppg43_24{transition:width}._rp-thumbnails-wrapper-hidden_ppg43_28{width:0}\n._rp-thumbnail-dragger_1faw8_2{touch-action:none;cursor:col-resize;background-color:var(--rp-thumbnail-border-color);width:4px;height:100%;transition:width .4s;position:absolute;top:0;right:0}._rp-thumbnail-dragger-dragging_1faw8_13,._rp-thumbnail-dragger_1faw8_2:hover{width:5px}\n._rp-thumbnail-dragger_174bn_1{touch-action:none;cursor:col-resize;background-color:var(--rp-thumbnail-border-color);width:4px;height:100%;transition:width .4s;position:absolute;top:0;right:0}._rp-thumbnail-dragger_174bn_1:hover,._rp-thumbnail-dragger-dragging_174bn_15{width:5px}\n._rp-thumbnail-wrapper_drpd8_1{margin-bottom:var(--rp-thumbnail-padding-y);cursor:pointer;flex-direction:column;align-items:center;display:flex}._rp-thumbnail-wrapper_drpd8_1:focus-visible{outline:1px solid var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:-1px}._rp-thumbnail-text_drpd8_15{color:var(--rp-text-color);margin-top:8px;font-size:12px;font-weight:400}._rp-thumbnail_drpd8_1{display:flex;position:relative;box-shadow:0 2px 6px #00000026}._rp-thumbnail_drpd8_1:not(._rp-thumbnail-active_drpd8_28):not(:hover){padding:4px}._rp-thumbnail-active_drpd8_28,._rp-thumbnail_drpd8_1:hover{border:var(--rp-thumbnail-active-color) solid 4px}._rp-thumbnail-loader_drpd8_37{justify-content:center;align-items:center;display:flex}\n._rp-thumbnails-container_1szrf_1{height:100%;max-height:100%;width:var(--rp-thumbnail-width,auto);background:var(--rp-thumbnail-background-color);flex-direction:column;align-items:center;display:flex;overflow:hidden auto}._rp-thumbnails_1szrf_1{padding-top:var(--rp-thumbnail-padding-y);box-sizing:border-box;width:100%;padding-right:4px}\n._rp-dialog-wrapper_39boz_1{z-index:9999;position:fixed;inset:0}._rp-dialog-overlay_39boz_7{background:var(--rp-overlay-background-color);position:fixed;inset:0}._rp-document-dialog_39boz_13{background:var(--rp-dialog-background-color);border-radius:var(--rp-border-radius);border:none;max-width:420px;padding:16px;line-height:1.5;position:relative;top:50%;left:50%;transform:translate(-50%,-50%)}._rp-document-dialog_39boz_13:focus-visible{outline:none}@media screen and (width<=640px){._rp-document-dialog_39boz_13{width:85%}}._rp-dialog-title_39boz_35{font-size:var(--rp-dialog-title-font-size);font-weight:var(--rp-dialog-title-font-weight);color:var(--rp-dialog-title-color);margin-top:0;margin-bottom:12px;line-height:normal}._rp-dialog-close_39boz_44{font-size:var(--rp-property-close-icon-size);cursor:pointer;position:absolute;top:16px;right:11px}._rp-properties-divider_39boz_52{background:var(--rp-properties-divider-color);width:100%;height:1px;margin-top:var(--rp-properties-divider-margin);margin-bottom:var(--rp-properties-divider-margin)}\n._rp-menu-item_1q6of_1{padding:var(--rp-dropdown-padding-menu-item);cursor:pointer;border-radius:var(--rp-border-radius);outline:none;align-items:center;display:flex}._rp-menu-item_1q6of_1 :is(svg){font-size:var(--rp-menu-item-icon-size)}._rp-menu-item_1q6of_1:is(:hover,:focus-visible){background:var(--rp-dropdown-hover-background-color)}._rp-menu-item_1q6of_1:focus-visible:not(:hover){outline:1px solid var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:1px}.rp-menu-item-left{justify-content:center;align-items:center;padding-right:8px;display:flex}.rp-menu-item{box-sizing:border-box;flex-direction:row;align-items:center;width:100%;display:flex}.rp-menu-item-right{margin-left:auto}.rp-menu-item[aria-disabled=true]{opacity:.5;cursor:not-allowed}._rp-menu-item_1q6of_1[data-disabled]{cursor:not-allowed;opacity:.5}\n._rp-menu-separator_17dlz_1{background-color:var(--rp-dropdown-separator-color);height:1px;margin-top:var(--rp-dropdown-separator-margin);margin-bottom:var(--rp-dropdown-separator-margin)}\n._rp-go-to-Top_4e0yd_1{transform:rotate(180deg)}\n._rp-other-tool-content_su718_1{padding:var(--rp-dropdown-padding)}\n._rp-paginate_3amlb_1{align-items:center;display:flex}._rp-page-input_3amlb_6{box-sizing:border-box;appearance:none;flex-shrink:0;width:3.5em;min-width:calc(4ch + 1rem);max-width:calc(4ch + 1rem);margin:1px .25rem;padding:.25rem .5rem}._rp-page-input_3amlb_6::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}._rp-page-input_3amlb_6::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}._rp-page-input_3amlb_6[type=number]{-moz-appearance:textfield}._rp-total-page_3amlb_29{color:var(--rp-text-color);margin-right:4px;font-size:14px;font-weight:400}._rp-sr-only_3amlb_36{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}\n._rp-property-item-wrapper_jno3l_1{gap:var(--rp-property-item-gap);margin-top:var(--rp-property-item-gap);margin-bottom:var(--rp-property-item-gap);font-size:var(--rp-property-item-font-size);font-weight:var(--rp-property-item-font-weight);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}._rp-property-item-label_jno3l_11{color:var(--rp-property-item-label-color)}._rp-property-item-value_jno3l_15{grid-column:span 2/span 2}\n._rp-toolbar-content_sz31z_1{background:var(--rp-toolbar-background);border-bottom:var(--rp-toolbar-border-color) 1px solid;padding:0 var(--rp-toolbar-padding);min-height:var(--rp-toolbar-size);align-items:center;display:flex}._rp-toolbar-wrapper_sz31z_10{justify-content:space-between;gap:0;width:100%;padding-left:1px;display:flex;overflow-x:auto}._rp-toolbar-wrapper_sz31z_10::-webkit-scrollbar{width:2px!important;height:2px!important}._rp-toolbar-wrapper_sz31z_10::-webkit-scrollbar-thumb{background-color:#888;border-radius:3px}._rp-toolbar-wrapper_sz31z_10::-webkit-scrollbar-track{background:#f1f1f1}._rp-toolbar-start_sz31z_33{align-items:center;gap:var(--rp-toolbar-gap);display:flex}._rp-toolbar-middle_sz31z_39{justify-content:center;align-items:center;gap:var(--rp-toolbar-gap);display:flex}._rp-toolbar-end_sz31z_46{justify-content:flex-end;align-items:center;gap:var(--rp-toolbar-gap);padding-right:1px;display:flex}\n._rp-rotate-counterclockwise_1nqcb_1{transform:rotateY(180deg)}\n._rp-search-tool-content_101l0_1{border:1px solid var(--rp-popover-border-color);border-radius:var(--rp-popover-border-radius);background-color:var(--rp-popover-background-color);color:var(--rp-text-color);padding:8px;display:flex}._rp-search-tool-input_101l0_10{color:var(--rp-text-color);align-items:center;gap:.7rem;display:flex}._rp-search-tool-input-icon_101l0_17{color:var(--rp-text-color);font-size:1.25rem}._rp-search-tool-input-icon_101l0_17[aria-disabled=true]{opacity:.5;cursor:not-allowed}._rp-search-tool-controls_101l0_27{border-left:1px solid var(--rp-popover-border-color);align-items:baseline;margin-left:.4rem;padding-left:.4rem;display:flex}._rp-search-tool-input-wrapper_101l0_35{flex-direction:column;gap:8px;display:flex}._rp-search-tool-input-checkboxes_101l0_41{gap:.5rem;display:flex}._rp-search-tool-input-clear_101l0_46{cursor:pointer;color:var(--rp-input-placeholder-color);justify-content:center;align-items:center;padding-left:.5rem;padding-right:.5rem;display:flex;position:absolute;top:0;bottom:0;right:0}._rp-search-input_101l0_60{border:1px solid var(--rp-search-input-border-color);color:var(--rp-text-color);max-width:220px;padding-right:2rem}._rp-search-icon-info_101l0_67{cursor:pointer;justify-content:center;align-items:center;margin-right:.5rem;font-size:20px;display:flex}._rp-search-icon-info_101l0_67:focus-visible{outline:1px solid var(--rp-outline-color,-webkit-focus-ring-color);outline-offset:1px;border-radius:var(--rp-border-radius)}._rp-search-loader-icon_101l0_81{width:20px;height:20px}._rp-search-live-region_101l0_86{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._rp-search-tool-result-navigator_101l0_98{margin-right:.3rem}\n._rp-toolbar-layout_13tet_1{flex-direction:column;height:100%;display:flex}._rp-content_13tet_7{width:100%;height:calc(100% - var(--rp-toolbar-height));display:flex}._rp-topbar-content_13tet_13{background:var(--rp-toolbar-background);border-bottom:var(--rp-toolbar-border-color) 1px solid;padding:0 var(--rp-toolbar-padding);min-height:var(--rp-toolbar-size);align-items:center;display:flex}._rp-sidebar-content_13tet_22{text-align:center;background:var(--rp-toolbar-background);border-right:var(--rp-toolbar-border-color) 1px solid;min-width:var(--rp-sidebar-width);flex-direction:column;padding-block:.75rem;display:flex}._rp-pages_13tet_32{background:var(--rp-pages-background-color);flex:1}._rp-thumbnails-wrapper_13tet_37{width:var(--rp-thumbnail-width,auto);flex-shrink:0;transition:width .15s;position:relative;overflow:hidden}._rp-thumbnails-wrapper-hidden_13tet_45{width:0}\n._rp-zoom-wrapper_1yldl_1{gap:4px;display:flex}._rp-current-zoom-wrapper_1yldl_6{align-items:center;display:flex}._rp-current-zoom-wrapper_1yldl_6._active_1yldl_11{background-color:var(--rp-button-hover-background)}._rp-current-zoom-icon_1yldl_15{margin-left:2px;transform:rotate(180deg)}._rp-zoom-level-icon_1yldl_20{margin-left:2px}._rp-current-zoom-text_1yldl_24{font-size:14px}._rp-zoom-dropdown-content_1yldl_28{padding:var(--rp-dropdown-padding)}\n._rp-annotation-layer_foiun_1{--annotation-unfocused-field-background:url(\"data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>\");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none;z-index:2;pointer-events:none;transform:unset;color:#000;transform-origin:var(--rp-page-rotate-translate);transform:rotate(var(--rp-rotate));display:block;position:absolute;inset:0}._rp-annotation-layer_foiun_1 :is(img){width:100%;max-width:100%}._rp-annotation-layer_foiun_1 .overlaidText{width:0;height:0;display:inline-block;position:absolute;top:0;left:0;overflow:hidden}._rp-annotation-layer_foiun_1 section:not(.popupAnnotation){z-index:calc(var(--rp-base-z-index,1) * 3)!important}._rp-annotation-layer_foiun_1 section:has(div.annotationContent) canvas.annotationContent{display:none}._rp-annotation-layer_foiun_1 section a{cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}._rp-annotation-layer_foiun_1 section a:hover{background-color:var(--rp-annotation-layer__link-hover-background)}._rp-annotation-layer_foiun_1 section :is(svg){width:100%;height:100%;position:absolute;top:0;left:0}._rp-annotation-layer_foiun_1 section .popupTriggerArea,._rp-annotation-layer_foiun_1 section.popupTriggerArea{cursor:pointer}._rp-annotation-layer_foiun_1 section.popupAnnotation{font-size:calc(9px * var(--scale-factor));pointer-events:none;width:max-content;max-width:45%;height:auto}._rp-annotation-layer_foiun_1 section.popupAnnotation.focused .popup{outline-width:3px}._rp-annotation-layer_foiun_1 section .popupContent{margin-top:calc(2px * var(--scale-factor));padding-top:calc(2px * var(--scale-factor));border-top:1px solid #333}._rp-annotation-layer_foiun_1 section .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--scale-factor))}._rp-annotation-layer_foiun_1 section .annotationTextContent,._rp-annotation-layer_foiun_1 .overlaidText{opacity:0;color:#0000;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute}._rp-annotation-layer_foiun_1 section .annotationTextContent span{width:100%;display:inline-block}._rp-annotation-layer_foiun_1 section.fileAttachmentAnnotation .popupTriggerArea{width:100%;height:100%}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation :is(input,textarea),._rp-annotation-layer_foiun_1 section.choiceWidgetAnnotation select,._rp-annotation-layer_foiun_1 section.buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--scale-factor)) sans-serif;vertical-align:top;width:100%;height:100%;margin:0}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation :is(input,textarea)[disabled],._rp-annotation-layer_foiun_1 section.choiceWidgetAnnotation select[disabled],._rp-annotation-layer_foiun_1 section.buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation :is(input,textarea):hover,._rp-annotation-layer_foiun_1 section.choiceWidgetAnnotation select:hover,._rp-annotation-layer_foiun_1 section.buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation :is(input,textarea):hover,._rp-annotation-layer_foiun_1 section.choiceWidgetAnnotation select:hover,._rp-annotation-layer_foiun_1 section.buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation :is(input,textarea):focus,._rp-annotation-layer_foiun_1 section.choiceWidgetAnnotation select:focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}._rp-annotation-layer_foiun_1 section.textWidgetAnnotation textarea{resize:none}._rp-annotation-layer_foiun_1 section .popup{box-shadow:0 calc(2px * var(--scale-factor)) calc(5px * var(--scale-factor)) #888;border-radius:calc(2px * var(--scale-factor));padding:calc(6px * var(--scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto;font-size:calc(9px * var(--scale-factor));background-color:#ff9;outline:1.5px solid #ffff4a}._rp-annotation-layer_foiun_1 section .popup *{font-size:calc(9px * var(--scale-factor))}._rp-annotation-layer_foiun_1 section .popup .header{display:inline-block}._rp-annotation-layer_foiun_1 section .popup .header h1{font-weight:700;display:inline}._rp-annotation-layer_foiun_1 section .popup .header .popupDate{margin-left:calc(5px * var(--scale-factor));width:fit-content;display:inline-block}._rp-annotation-layer_foiun_1 section{text-align:initial;pointer-events:none;box-sizing:border-box;position:absolute}._rp-annotation-layer_foiun_1 section.popupTriggerArea{pointer-events:auto}._rp-annotation-layer_foiun_1 section:has(a){pointer-events:auto}._rp-annotation-layer_foiun_1 section:has(button){pointer-events:auto}._rp-annotation-layer_foiun_1 section:has(input){pointer-events:auto}._rp-annotation-layer_foiun_1 section:has(textarea){pointer-events:auto}._rp-annotation-layer_foiun_1 section:has(select){pointer-events:auto}._rp-annotation-layer_foiun_1 section:has([role=button]){pointer-events:auto}._rp-annotation-layer_foiun_1 section :is(a,button,input,textarea,select),._rp-annotation-layer_foiun_1 section [role=button],._rp-annotation-layer_foiun_1 section .popup,._rp-annotation-layer_foiun_1 section .popupTriggerArea,._rp-annotation-layer_foiun_1 section.popupTriggerArea{pointer-events:auto}\n._rp-page-wrapper_1iuev_1{justify-content:center;align-items:center;display:flex}._rp-page_1iuev_1{box-shadow:var(--rp-page-shadow,0px 2px 12px 0px #00000026);outline:var(--rp-page-outline,none);outline-offset:var(--rp-page-outline-offset,0);position:relative}._rp-canvas-layer_1iuev_17{contain:strict;z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}._rp-page_1iuev_1 canvas[data-rp$=canvas]{transform:scale(var(--rp-canvas-scale-ratio,1));transform-origin:0 0;will-change:transform, opacity;backface-visibility:hidden;contain:content;opacity:0;pointer-events:none;margin:0;display:block;position:absolute;inset:0}._rp-loader-wrapper_1iuev_40{z-index:1;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;inset:0}\n._rp-text-highlight_jdkf8_1{pointer-events:none;transform-origin:0 0;white-space:pre;line-height:1;position:absolute;overflow:hidden}\n._rp-text-layer_7vzxr_1{color:#0000;transform:rotate(var(--rp-rotate));transform-origin:var(--rp-page-rotate-translate);z-index:1;pointer-events:auto;-webkit-user-select:text;user-select:text;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));position:absolute;inset:0}._rp-text-layer_7vzxr_1._selecting_7vzxr_18~[data-rp$=annotationLayer] section{pointer-events:none}._rp-text-layer_7vzxr_1 br::selection{color:#0000;background-color:#0000}._rp-text-layer_7vzxr_1 :is(span,br):not(.highlight){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}._rp-text-layer_7vzxr_1>:not(._markedContent_7vzxr_44),._rp-text-layer_7vzxr_1 ._markedContent_7vzxr_44 span:not(._markedContent_7vzxr_44){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._rp-text-layer_7vzxr_1 .endOfContent{bottom:0;z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._rp-text-layer_7vzxr_1._selecting_7vzxr_18 .endOfContent{top:0}._rp-text-layer-text_7vzxr_68{transform-origin:0 0;white-space:pre;line-height:1;position:absolute;overflow:hidden}@-moz-document url-prefix(){._rp-text-layer-text_7vzxr_68{overflow:visible}}\n";
4
+ //#endregion
5
+ export { e as t };
@@ -1,7 +1,10 @@
1
1
  import { FC } from 'react';
2
2
  interface Props {
3
3
  pageNumber: number;
4
- onLoading?: () => void;
4
+ onLoading?: (metadata: {
5
+ renderKey: string;
6
+ hasRenderedBefore: boolean;
7
+ }) => void;
5
8
  onLoaded?: () => void;
6
9
  }
7
10
  export declare const CanvasLayer: FC<Props>;
@@ -3,6 +3,9 @@ import { FC, PropsWithChildren } from 'react';
3
3
  interface CacheContext {
4
4
  viewports: Map<number, PageViewport>;
5
5
  pages: Map<number, any>;
6
+ hasRenderedPage: (key: string) => boolean;
7
+ markRenderedPage: (key: string) => void;
8
+ clearRenderedPages: () => void;
6
9
  }
7
10
  export declare const RenderedPagesCacheContext: import('react').Context<CacheContext>;
8
11
  export declare const useRenderedPagesCache: () => CacheContext;
@@ -1,8 +1,5 @@
1
1
  import { FC, PropsWithChildren } from 'react';
2
- import { VariableSizeGrid } from 'react-window';
3
2
  interface ContextType {
4
- virtualScrollRef?: VariableSizeGrid;
5
- getVirtualScrollRef: (element: VariableSizeGrid) => void;
6
3
  pageScrollElementRef?: HTMLDivElement;
7
4
  getPageScrollElementRef: (element: HTMLDivElement) => void;
8
5
  virtualScrollableElementRef?: HTMLDivElement;
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "Seitenweises Blättern aktivieren",
53
53
  "verticalScrollingLabel": "Vertikaler Bildlauf",
54
54
  "verticalScrollingTooltip": "Vertikalen Bildlauf aktivieren",
55
+ "horizontalScrollingLabel": "Horizontaler Bildlauf",
56
+ "horizontalScrollingTooltip": "Horizontalen Bildlauf aktivieren",
55
57
  "horizontalLabel": "Horizontaler Bildlauf",
56
58
  "horizontalTooltip": "Horizontalen Bildlauf aktivieren",
57
59
  "wrappedScrollingLabel": "Bildlauf mit Umbruch",
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "Enable page scrolling",
53
53
  "verticalScrollingLabel": "Vertical scrolling",
54
54
  "verticalScrollingTooltip": "Enable vertical scrolling",
55
+ "horizontalScrollingLabel": "Horizontal scrolling",
56
+ "horizontalScrollingTooltip": "Enable horizontal scrolling",
55
57
  "horizontalLabel": "Horizontal scrolling",
56
58
  "horizontalTooltip": "Enable horizontal scrolling",
57
59
  "wrappedScrollingLabel": "Wrapped scrolling",
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "Abilita lo scorrimento delle pagine",
53
53
  "verticalScrollingLabel": "Scorrimento verticale",
54
54
  "verticalScrollingTooltip": "Abilita lo scorrimento verticale",
55
+ "horizontalScrollingLabel": "Scorrimento orizzontale",
56
+ "horizontalScrollingTooltip": "Abilita lo scorrimento orizzontale",
55
57
  "horizontalLabel": "Scorrimento orizzontale",
56
58
  "horizontalTooltip": "Abilita lo scorrimento orizzontale",
57
59
  "wrappedScrollingLabel": "Scorrimento avvolto",
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "Ativar rolagem de página",
53
53
  "verticalScrollingLabel": "Rolagem vertical",
54
54
  "verticalScrollingTooltip": "Ativar rolagem vertical",
55
+ "horizontalScrollingLabel": "Rolagem horizontal",
56
+ "horizontalScrollingTooltip": "Ativar rolagem horizontal",
55
57
  "horizontalLabel": "Rolagem horizontal",
56
58
  "horizontalTooltip": "Ativar rolagem horizontal",
57
59
  "wrappedScrollingLabel": "Rolagem envolvida",
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "เปิดใช้การเลื่อนภายในหน้า",
53
53
  "verticalScrollingLabel": "การเลื่อนแนวตั้ง",
54
54
  "verticalScrollingTooltip": "เปิดใช้การเลื่อนแนวตั้ง",
55
+ "horizontalScrollingLabel": "การเลื่อนแนวนอน",
56
+ "horizontalScrollingTooltip": "เปิดใช้การเลื่อนแนวนอน",
55
57
  "horizontalLabel": "การเลื่อนแนวนอน",
56
58
  "horizontalTooltip": "เปิดใช้การเลื่อนแนวนอน",
57
59
  "wrappedScrollingLabel": "การเลื่อนแบบแรพ",
@@ -52,6 +52,8 @@ declare const _default: {
52
52
  "pageScrollingTooltip": "启用页面滚动",
53
53
  "verticalScrollingLabel": "垂直滚动",
54
54
  "verticalScrollingTooltip": "启用垂直滚动",
55
+ "horizontalScrollingLabel": "水平滚动",
56
+ "horizontalScrollingTooltip": "启用水平滚动",
55
57
  "horizontalLabel": "水平滚动",
56
58
  "horizontalTooltip": "启用水平滚动",
57
59
  "wrappedScrollingLabel": "环绕滚动",
@@ -1,5 +1,8 @@
1
1
  import { NormalizedKeyword } from './types';
2
2
  export declare const EMPTY_KEYWORD_REGEXP: NormalizedKeyword;
3
+ export declare const DOCS_URL = "https://www.react-pdf-kit.dev/docs";
3
4
  export declare const ORGANIZATION_ALLOWED_FEATURES_MESSAGE = "This feature is only available for the Organization license";
4
5
  export declare const INVALID_OR_CORRUPTED_PDF_MESSAGE = "Invalid or corrupted PDF file.";
5
6
  export declare const BROWSER_NOT_SUPPORTED_MESSAGE = "React PDF Kit is unable to render on this browser.";
7
+ export declare const WASM_URL_REQUIRED_MESSAGE = "This PDF uses JPEG 2000 images and requires pdf.js WASM assets. Please set wasmUrl in RPConfig.";
8
+ export declare const WASM_URL_REQUIRED_CONSOLE_MESSAGE = "This PDF uses JPEG 2000 images and requires pdf.js WASM assets. Please set wasmUrl in RPConfig. Learn more: https://www.react-pdf-kit.dev/docs/components/rp-config";
@@ -4,6 +4,7 @@ export declare const SCROLL_BAR_WIDTH = 20;
4
4
  export declare const MIN_ZOOM_SCALE = 25;
5
5
  export declare const MAX_ZOOM_SCALE = 1000;
6
6
  export declare const ZOOM_STEP_PERCENT = 25;
7
+ export declare const VIRTUAL_SCROLL_ROW_OVERSCAN = 2;
7
8
  export declare const ZOOM_DEBOUNCE_MS = 400;
8
9
  export declare const ZOOM_SAFETY_TIMEOUT_MS = 1000;
9
10
  export declare const MAX_CANVAS_DIM = 32767;