@react-pdf-kit/viewer 2.0.0-beta.0 → 2.0.0-beta.10

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 (212) hide show
  1. package/dist/Combination-54a77a7a.js +701 -0
  2. package/dist/MostPageTool.module-13578ad6.js +6 -0
  3. package/dist/OtherTool.module-a4be5f1f.js +6 -0
  4. package/dist/Paginate.module-206a7d7d.js +8 -0
  5. package/dist/PaginationContext-9217cab4.js +201 -0
  6. package/dist/{LayoutWrapper-a871c161.js → RPLayout.module-967bf4bc.js} +3 -9
  7. package/dist/RPToolbar.module-27d7fe77.js +10 -0
  8. package/dist/{RotateTool.module-03987eba.js → RotateTool.module-67946714.js} +1 -1
  9. package/dist/SearchTool.module-99f60dc7.js +16 -0
  10. package/dist/ToolbarLayout.module-1fee0a18.js +11 -0
  11. package/dist/{ZoomTool.module-6c5eabbb.js → ZoomTool.module-7082af8c.js} +1 -1
  12. package/dist/assets/style.css +1 -0
  13. package/dist/assets/style.js +75 -0
  14. package/dist/components/RPConfig.js +14 -1489
  15. package/dist/components/RPController.js +109 -66
  16. package/dist/components/RPDropFileZone.js +26 -12
  17. package/dist/components/RPPages.js +991 -58
  18. package/dist/components/RPProvider.js +107 -19
  19. package/dist/components/RPTheme.js +6 -5
  20. package/dist/components/icons/DualPageIcon.js +6 -6
  21. package/dist/components/icons/LoaderIcon.js +1 -1
  22. package/dist/components/icons/SinglePageIcon.js +6 -6
  23. package/dist/components/layout/Container.js +1 -1
  24. package/dist/components/layout/LayoutContainer.js +32 -57
  25. package/dist/components/layout/LayoutWrapper.js +9 -4
  26. package/dist/components/layout/RPDefaultLayout.js +214 -14
  27. package/dist/components/layout/RPLayout.js +143 -41
  28. package/dist/components/layout/WrapperLayout.js +22 -9
  29. package/dist/components/layout/sidebar/RPSidebar.js +110 -13
  30. package/dist/components/layout/sidebar/RPSplitter.js +1 -1
  31. package/dist/components/layout/sidebar/Thumbnail.js +129 -52
  32. package/dist/components/layout/sidebar/Thumbnails.js +75 -6
  33. package/dist/components/layout/toolbar/DarkModeTool.js +24 -13
  34. package/dist/components/layout/toolbar/DocumentDialog.js +311 -56
  35. package/dist/components/layout/toolbar/DocumentProperties.js +21 -8
  36. package/dist/components/layout/toolbar/FileDownloadTool.js +48 -13
  37. package/dist/components/layout/toolbar/FileUploadTool.js +34 -10
  38. package/dist/components/layout/toolbar/FullScreenTool.js +43 -28
  39. package/dist/components/layout/toolbar/MenuItem.js +15 -8
  40. package/dist/components/layout/toolbar/MenuSeparator.js +11 -4
  41. package/dist/components/layout/toolbar/MostPageTool.js +72 -51
  42. package/dist/components/layout/toolbar/OtherTool.js +188 -22
  43. package/dist/components/layout/toolbar/Paginate.js +136 -17
  44. package/dist/components/layout/toolbar/PrintTool.js +70 -13
  45. package/dist/components/layout/toolbar/PropertyItem.js +1 -1
  46. package/dist/components/layout/toolbar/RPMenuItem.js +23 -13
  47. package/dist/components/layout/toolbar/RPMoreOptions.js +119 -47
  48. package/dist/components/layout/toolbar/RPToolbar.js +148 -8
  49. package/dist/components/layout/toolbar/RPToolbarEnd.js +118 -7
  50. package/dist/components/layout/toolbar/RotateTool.js +42 -18
  51. package/dist/components/layout/toolbar/ScrollModeTool.js +33 -21
  52. package/dist/components/layout/toolbar/SearchCloseButton.js +30 -7
  53. package/dist/components/layout/toolbar/SearchResultNavigator.js +87 -8
  54. package/dist/components/layout/toolbar/SearchTool.js +236 -54
  55. package/dist/components/layout/toolbar/SelectionModeTool.js +22 -10
  56. package/dist/components/layout/toolbar/ThumbnailTool.js +32 -10
  57. package/dist/components/layout/toolbar/ToolbarCustom.js +52 -55
  58. package/dist/components/layout/toolbar/ToolbarDefault.js +144 -58
  59. package/dist/components/layout/toolbar/ToolbarLayout.js +149 -6
  60. package/dist/components/layout/toolbar/ViewModeTool.js +31 -19
  61. package/dist/components/layout/toolbar/ZoomTool.js +104 -84
  62. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +38 -12
  63. package/dist/components/layout/toolbar/tools/DualPageTool.js +26 -0
  64. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +31 -9
  65. package/dist/components/layout/toolbar/tools/FileUploadTool.js +29 -8
  66. package/dist/components/layout/toolbar/tools/FullScreenTool.js +25 -13
  67. package/dist/components/layout/toolbar/tools/InputPageTool.js +66 -26
  68. package/dist/components/layout/toolbar/tools/NextPageTool.js +36 -47
  69. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +51 -11
  70. package/dist/components/layout/toolbar/tools/PrintTool.js +29 -7
  71. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +31 -8
  72. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +34 -11
  73. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +31 -0
  74. package/dist/components/layout/toolbar/tools/SinglePageTool.js +26 -0
  75. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +17 -6
  76. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +35 -13
  77. package/dist/components/layout/toolbar/tools/ZoomInTool.js +49 -20
  78. package/dist/components/layout/toolbar/tools/ZoomLevelDisplay.js +27 -0
  79. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +57 -23
  80. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +47 -18
  81. package/dist/components/layout/toolbar/tools/defaults/RPHorizontalBar.js +122 -45
  82. package/dist/components/layout/toolbar/tools/defaults/RPVerticalBar.js +37 -11
  83. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +18 -5
  84. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +36 -11
  85. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +25 -50
  86. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +24 -9
  87. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +47 -54
  88. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +32 -7
  89. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +36 -12
  90. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +26 -14
  91. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +27 -15
  92. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +30 -18
  93. package/dist/components/page/AnnotationLayer.js +130 -54
  94. package/dist/components/page/CanvasLayer.js +62 -49
  95. package/dist/components/page/CustomElement.js +49 -18
  96. package/dist/components/page/DualPage.js +97 -4
  97. package/dist/components/page/RPPage.js +134 -51
  98. package/dist/components/page/SinglePage.js +87 -4
  99. package/dist/components/page/TextHighlightLayer.js +195 -57
  100. package/dist/components/page/TextLayer.js +193 -52
  101. package/dist/components/ui/Button.js +9 -8
  102. package/dist/components/ui/Checkbox.js +27 -25
  103. package/dist/components/ui/DropDown.js +21 -14
  104. package/dist/components/ui/Input.js +10 -9
  105. package/dist/components/ui/LoadingIndicator.js +45 -5
  106. package/dist/components/ui/PasswordModal.js +18 -15
  107. package/dist/components/ui/RPTooltip.js +98 -95
  108. package/dist/contexts/DimensionPagesContext.js +35 -17
  109. package/dist/contexts/DropFileZoneContext.js +32 -22
  110. package/dist/contexts/ElementPageContext.js +114 -51
  111. package/dist/contexts/EventCallbackContext.js +30 -0
  112. package/dist/contexts/FileInputContext.js +32 -22
  113. package/dist/contexts/FullScreenContext.js +17 -10
  114. package/dist/contexts/GlobalCurrentPage.js +13 -10
  115. package/dist/contexts/HighlightContext.js +24 -11
  116. package/dist/contexts/LicenseContext.js +1 -0
  117. package/dist/contexts/LoaderContext.js +10 -9
  118. package/dist/contexts/LocalizationContext.js +25 -29
  119. package/dist/contexts/PagesRotateContext.js +36 -18
  120. package/dist/contexts/PaginationContext.js +32 -4
  121. package/dist/contexts/PrintContext.js +76 -6
  122. package/dist/contexts/RPDocumentContext.js +48 -30
  123. package/dist/contexts/RenderQueueProvider.js +70 -8
  124. package/dist/contexts/RotationContext.js +25 -15
  125. package/dist/contexts/ScrollModeContext.js +7 -6
  126. package/dist/contexts/SearchContext.js +94 -6
  127. package/dist/contexts/SelectionModeContext.js +5 -4
  128. package/dist/contexts/ThumbnailsContext.js +41 -6
  129. package/dist/contexts/ViewModeContext.js +10 -9
  130. package/dist/contexts/ZoomContext.js +48 -38
  131. package/dist/floating-ui.react-dom-5ec29bd6.js +1327 -0
  132. package/dist/index-4baea9b5.js +1198 -0
  133. package/dist/index-655864a7.js +27 -0
  134. package/dist/{index-35c7f4a2.js → index-c0faa594.js} +63 -86
  135. package/dist/index-e3ee9457.js +150 -0
  136. package/dist/libInjectCss.js +9 -0
  137. package/dist/main.js +269 -84
  138. package/dist/types/assets/style.d.ts +1 -0
  139. package/dist/types/components/icons/DualPageIcon.d.ts +1 -1
  140. package/dist/types/components/icons/SinglePageIcon.d.ts +1 -1
  141. package/dist/types/components/layout/toolbar/tools/DualPageTool.d.ts +3 -0
  142. package/dist/types/components/layout/toolbar/tools/SelectionModeSwitcherTool.d.ts +3 -0
  143. package/dist/types/components/layout/toolbar/tools/SinglePageTool.d.ts +3 -0
  144. package/dist/types/components/layout/toolbar/tools/ZoomLevelDisplay.d.ts +7 -0
  145. package/dist/types/contexts/EventCallbackContext.d.ts +5 -0
  146. package/dist/types/contexts/RenderQueueProvider.d.ts +2 -2
  147. package/dist/types/libInjectCss.d.ts +1 -0
  148. package/dist/types/main.d.ts +6 -6
  149. package/dist/types/utils/annotations.d.ts +3 -3
  150. package/dist/types/utils/approximateFragtion.d.ts +9 -0
  151. package/dist/types/utils/getElementPositionInPage.d.ts +5 -0
  152. package/dist/types/utils/hooks/useCopyText.d.ts +1 -0
  153. package/dist/types/utils/hooks/usePrint.d.ts +3 -2
  154. package/dist/types/utils/hooks/useSearch.d.ts +1 -2
  155. package/dist/types/utils/injectPrintCSS.d.ts +1 -0
  156. package/dist/types/utils/link_service.d.ts +11 -1
  157. package/dist/types/utils/renderPage.d.ts +2 -2
  158. package/dist/types/utils/types.d.ts +38 -5
  159. package/dist/types/utils/zoom.d.ts +2 -0
  160. package/dist/utils/annotations.js +125 -149
  161. package/dist/utils/approximateFragtion.js +22 -0
  162. package/dist/utils/getElementPositionInPage.js +84 -0
  163. package/dist/utils/getWordPositionInPage.js +5 -5
  164. package/dist/utils/getZoomLevel.js +9 -8
  165. package/dist/utils/highlight.js +72 -72
  166. package/dist/utils/hooks/useCopyText.js +36 -0
  167. package/dist/utils/hooks/useDarkModeProps.js +3 -2
  168. package/dist/utils/hooks/useFileDownload.js +29 -54
  169. package/dist/utils/hooks/useHighlight.js +34 -33
  170. package/dist/utils/hooks/useLicense.js +1 -1
  171. package/dist/utils/hooks/useLoadPdf.js +44 -36
  172. package/dist/utils/hooks/useLoadWorker.js +11 -8
  173. package/dist/utils/hooks/useLocalization.js +13 -13
  174. package/dist/utils/hooks/usePageRotateContext.js +33 -17
  175. package/dist/utils/hooks/usePaginate.js +26 -49
  176. package/dist/utils/hooks/usePinch.js +62 -41
  177. package/dist/utils/hooks/usePresentPage.js +80 -50
  178. package/dist/utils/hooks/usePrint.js +181 -55
  179. package/dist/utils/hooks/useRotate.js +21 -7
  180. package/dist/utils/hooks/useScrollToPage.js +26 -51
  181. package/dist/utils/hooks/useSearch.js +141 -55
  182. package/dist/utils/hooks/useThumbnail.js +55 -55
  183. package/dist/utils/hooks/useVirtualReactWindow.js +70 -52
  184. package/dist/utils/hooks/useWatermark.js +18 -15
  185. package/dist/utils/injectPrintCSS.js +22 -0
  186. package/dist/utils/link_service.js +49 -9
  187. package/dist/utils/renderPage.js +13 -10
  188. package/dist/utils/zoom.js +6 -0
  189. package/package.json +6 -8
  190. package/dist/SearchCloseButton-cbf182aa.js +0 -33
  191. package/dist/ToolbarLayout.module-c588d36b.js +0 -3411
  192. package/dist/assets/Button.css +0 -1
  193. package/dist/assets/Checkbox.css +0 -1
  194. package/dist/assets/Container.css +0 -1
  195. package/dist/assets/DropDown.css +0 -1
  196. package/dist/assets/Input.css +0 -1
  197. package/dist/assets/LayoutWrapper.css +0 -1
  198. package/dist/assets/LoaderIcon.css +0 -1
  199. package/dist/assets/MenuItem.css +0 -1
  200. package/dist/assets/MenuSeparator.css +0 -1
  201. package/dist/assets/PasswordModal.css +0 -1
  202. package/dist/assets/PropertyItem.css +0 -1
  203. package/dist/assets/RPDropFileZone.css +0 -1
  204. package/dist/assets/RPSplitter.css +0 -1
  205. package/dist/assets/RPTooltip.css +0 -1
  206. package/dist/assets/RotateTool.css +0 -1
  207. package/dist/assets/SearchCloseButton.css +0 -1
  208. package/dist/assets/ToolbarLayout.css +0 -1
  209. package/dist/assets/WrapperLayout.css +0 -1
  210. package/dist/assets/ZoomTool.css +0 -1
  211. package/dist/floating-ui.react-dom-6b2fe0df.js +0 -1474
  212. package/dist/index-f563c6f0.js +0 -1889
@@ -1,76 +1,139 @@
1
- import { jsx as w } from "react/jsx-runtime";
2
- import { createContext as L, useState as P, useCallback as u, useContext as h, useRef as g, useMemo as A } from "react";
3
- import { LicenseType as R } from "../utils/types.js";
4
- import { useDimensionPagesContext as y } from "./DimensionPagesContext.js";
5
- import { usePagesRotateContext as S } from "./PagesRotateContext.js";
6
- import { useLicenseContext as T } from "./LicenseContext.js";
7
- import { useZoomContext as _ } from "./ZoomContext.js";
8
- import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as E } from "../utils/const.js";
9
- const d = L(void 0), U = ({ children: c }) => {
10
- const [i, o] = P({}), { widths: t, heights: l } = y(), { pageRotate: m } = S(), { currentZoom: f } = _(), x = u(
11
- (e, r) => {
12
- o((n) => {
13
- const s = { width: t[e], height: l[e] };
1
+ import { jsx as z } from "react/jsx-runtime";
2
+ import { createContext as H, useState as N, useCallback as d, useContext as U, useRef as W, useMemo as q } from "react";
3
+ import { ScrollMode as g, LicenseType as B } from "../utils/types.js";
4
+ import { useDimensionPagesContext as J } from "./DimensionPagesContext.js";
5
+ import { usePagesRotateContext as K } from "./PagesRotateContext.js";
6
+ import { useLicenseContext as Q } from "./LicenseContext.js";
7
+ import { useZoomContext as X } from "./ZoomContext.js";
8
+ import { ORGANIZATION_ALLOWED_FEATURES_MESSAGE as x } from "../utils/const.js";
9
+ import { getScrollDistance as w } from "../utils/getScrollDistance.js";
10
+ import { useLayoutContainer as Y } from "./LayoutContainerContext.js";
11
+ import { useScrollModeContext as $ } from "./ScrollModeContext.js";
12
+ import { getElementPagePosition as ee } from "../utils/getElementPositionInPage.js";
13
+ import { useViewModeContext as te } from "./ViewModeContext.js";
14
+ import { useVirtualScrollContext as oe } from "./VirtualScrollContext.js";
15
+ import "../th_TH-d627cd51.js";
16
+ import "../utils/appConsole.js";
17
+ import "./RPDocumentContext.js";
18
+ import "../utils/hooks/useLoadPdf.js";
19
+ import "pdfjs-dist";
20
+ import "../utils/getThumbnailViewport.js";
21
+ import "./ConfigContext.js";
22
+ import "./DocumentPasswordContext.js";
23
+ import "../utils/hooks/usePdfProperties.js";
24
+ import "../utils/convertPdfDate.js";
25
+ import "../utils/formatFileSize.js";
26
+ import "../utils/constants.js";
27
+ import "./RotationContext.js";
28
+ import "./InitialStateContext.js";
29
+ import "./EventCallbackContext.js";
30
+ import "../utils/hooks/useLicense.js";
31
+ import "../utils/getZoomLevel.js";
32
+ import "./GlobalCurrentPage.js";
33
+ import "../utils/hooks/useDebounce.js";
34
+ const S = H(void 0), Ve = ({ children: l }) => {
35
+ const [s, m] = N({}), { widths: t, heights: r } = J(), { pagesRef: c } = Y(), { scrollMode: C } = $(), { pageRotate: u } = K(), { currentZoom: a } = X(), { columnCount: R } = te(), { pageScrollElementRef: I, virtualScrollableElementRef: T } = oe(), M = d(
36
+ (e, i, o = { behavior: "smooth" }) => {
37
+ var v;
38
+ const n = T || I;
39
+ if (!c || !n)
40
+ return;
41
+ const L = (v = s[e]) == null ? void 0 : v[i];
42
+ if (!L)
43
+ return;
44
+ let p = 0, P = 0;
45
+ if (C === g.VERTICAL_SCROLLING) {
46
+ const f = e - 1, E = R, j = f % E, k = Math.floor(f / E);
47
+ p = w(r, k), P = w(t, j);
48
+ }
49
+ C === g.HORIZONTAL_SCROLLING && (P = t.slice(0, e - 1).reduce((f, E) => f + E, 0));
50
+ const _ = {
51
+ height: r[e - 1],
52
+ width: t[e - 1]
53
+ }, D = u[e], { left: G, top: Z } = ee(
54
+ _,
55
+ c,
56
+ L,
57
+ D,
58
+ a
59
+ ), V = P + G, b = p + Z, F = {
60
+ left: Math.max(V, 0),
61
+ top: Math.max(b, 0)
62
+ };
63
+ n.scrollTo({
64
+ ...F,
65
+ behavior: o.behavior
66
+ });
67
+ },
68
+ [s, r, t, c, u, a, C]
69
+ ), A = d(
70
+ (e, i) => {
71
+ m((o) => {
72
+ const n = { width: t[e - 1], height: r[e - 1] };
14
73
  return {
15
- ...n,
16
- [e]: r(
17
- n[e],
18
- s,
19
- m[e],
20
- f * 100
74
+ ...o,
75
+ [e]: i(
76
+ o[e],
77
+ n,
78
+ u[e],
79
+ a * 100
21
80
  )
22
81
  };
23
82
  });
24
83
  },
25
- [t, l, f, m]
26
- ), p = u((e) => {
27
- o((r) => {
28
- const n = { ...r };
29
- return delete n[e], n;
84
+ [t, r, a, u]
85
+ ), O = d((e) => {
86
+ m((i) => {
87
+ const o = { ...i };
88
+ return delete o[e], o;
30
89
  });
31
- }, []), C = u((e, r) => {
32
- o((n) => {
33
- const s = { ...n };
34
- return s[e] = s[e].filter((D, v) => v !== r), s;
90
+ }, []), y = d((e, i) => {
91
+ m((o) => {
92
+ const n = { ...o };
93
+ return n[e] = n[e].filter((L, p) => p !== i), n;
35
94
  });
36
95
  }, []);
37
- return /* @__PURE__ */ w(
38
- d.Provider,
96
+ return /* @__PURE__ */ z(
97
+ S.Provider,
39
98
  {
40
- value: { updateElement: x, clearElements: p, removeElement: C, elementList: i },
41
- children: c
99
+ value: { updateElement: A, clearElements: O, removeElement: y, elementList: s, scrollToElement: M },
100
+ children: l
42
101
  }
43
102
  );
44
- }, a = () => {
45
- }, W = () => {
46
- const c = h(d), { type: i, validating: o } = T(), t = g(0), l = A(() => {
47
- if (o !== !1)
103
+ }, h = () => {
104
+ }, be = () => {
105
+ const l = U(S), { type: s, validating: m } = Q(), t = W(0), r = q(() => {
106
+ if (m !== !1)
48
107
  return {
49
- updateElement: a,
50
- clearElements: a,
51
- removeElement: a,
52
- elementList: {}
108
+ updateElement: h,
109
+ clearElements: h,
110
+ removeElement: h,
111
+ elementList: {},
112
+ scrollToElement: h
53
113
  };
54
- if (!(i !== R.Developer))
114
+ if (!(s !== B.Developer))
55
115
  return {
56
116
  updateElement: () => {
57
- t.current === 0 && (console.error(E), t.current++);
117
+ t.current === 0 && (console.error(x), t.current++);
58
118
  },
59
119
  clearElements: () => {
60
- t.current === 0 && (console.error(E), t.current++);
120
+ t.current === 0 && (console.error(x), t.current++);
61
121
  },
62
122
  removeElement: () => {
63
- t.current === 0 && (console.error(E), t.current++);
123
+ t.current === 0 && (console.error(x), t.current++);
64
124
  },
65
- elementList: {}
125
+ elementList: {},
126
+ scrollToElement: () => {
127
+ t.current === 0 && (console.error(x), t.current++);
128
+ }
66
129
  };
67
- }, [i, o]);
68
- if (!c)
130
+ }, [s, m]);
131
+ if (!l)
69
132
  throw new Error("useElementPageContext must be used within a ElementPageProvider");
70
- return l || c;
133
+ return r || l;
71
134
  };
72
135
  export {
73
- d as ElementPageContext,
74
- U as ElementPageProvider,
75
- W as useElementPageContext
136
+ S as ElementPageContext,
137
+ Ve as ElementPageProvider,
138
+ be as useElementPageContext
76
139
  };
@@ -0,0 +1,30 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { createContext as l, useContext as c } from "react";
3
+ const t = l({
4
+ onPageChange: () => {
5
+ },
6
+ onRotate: () => {
7
+ },
8
+ onScroll: () => {
9
+ }
10
+ }), v = () => c(t), x = ({
11
+ children: e,
12
+ onPageChange: o,
13
+ onRotate: n,
14
+ onScroll: r
15
+ }) => /* @__PURE__ */ a(
16
+ t.Provider,
17
+ {
18
+ value: {
19
+ onPageChange: o,
20
+ onRotate: n,
21
+ onScroll: r
22
+ },
23
+ children: e
24
+ }
25
+ );
26
+ export {
27
+ t as EventCallbackContext,
28
+ x as EventCallbackProvider,
29
+ v as useEventCallbackContext
30
+ };
@@ -1,39 +1,49 @@
1
- import { jsxs as m, jsx as x } from "react/jsx-runtime";
2
- import { createContext as C, useRef as c, useContext as F } from "react";
1
+ import { jsxs as d, jsx as x } from "react/jsx-runtime";
2
+ import { createContext as C, useRef as s, useContext as F } from "react";
3
3
  import { useDocumentContext as h } from "./RPDocumentContext.js";
4
4
  import { useDocumentPasswordContext as P } from "./DocumentPasswordContext.js";
5
- const l = C(null), g = ({ children: t }) => {
6
- const { setFilename: u, setPdfSrc: p } = h(), r = c(), o = c(null), { setPassword: a } = P(), f = () => {
7
- var e;
8
- (e = o.current) == null || e.click();
9
- }, d = (e) => {
10
- var i;
11
- const n = (i = e.target.files) == null ? void 0 : i[0];
12
- if (!n || n.type !== "application/pdf")
5
+ import "../utils/hooks/useLoadPdf.js";
6
+ import "pdfjs-dist";
7
+ import "../utils/types.js";
8
+ import "../th_TH-d627cd51.js";
9
+ import "../utils/getThumbnailViewport.js";
10
+ import "./ConfigContext.js";
11
+ import "../utils/hooks/usePdfProperties.js";
12
+ import "../utils/convertPdfDate.js";
13
+ import "../utils/formatFileSize.js";
14
+ import "../utils/appConsole.js";
15
+ const c = C(null), S = ({ children: e }) => {
16
+ const { setFilename: l, setPdfSrc: u } = h(), o = s(), n = s(null), { setPassword: m } = P(), a = () => {
17
+ var t;
18
+ (t = n.current) == null || t.click();
19
+ }, f = (t) => {
20
+ var p;
21
+ const r = (p = t.target.files) == null ? void 0 : p[0];
22
+ if (!r || r.type !== "application/pdf")
13
23
  return;
14
- const s = URL.createObjectURL(n);
15
- r.current && URL.revokeObjectURL(r.current), r.current = s, u(n.name), p(s), e.target.value = "", a("");
24
+ const i = URL.createObjectURL(r);
25
+ o.current && URL.revokeObjectURL(o.current), o.current = i, l(r.name), u(i), t.target.value = "", m("");
16
26
  };
17
- return /* @__PURE__ */ m(l.Provider, { value: { openFile: f }, children: [
18
- t,
27
+ return /* @__PURE__ */ d(c.Provider, { value: { openFile: a }, children: [
28
+ e,
19
29
  /* @__PURE__ */ x(
20
30
  "input",
21
31
  {
22
32
  accept: "application/pdf",
23
33
  type: "file",
24
- ref: o,
34
+ ref: n,
25
35
  style: { display: "none" },
26
- onChange: d
36
+ onChange: f
27
37
  }
28
38
  )
29
39
  ] });
30
- }, j = () => {
31
- const t = F(l);
32
- if (!t)
40
+ }, q = () => {
41
+ const e = F(c);
42
+ if (!e)
33
43
  throw new Error("useOpenFileContext must be used within FileInputProvider");
34
- return t;
44
+ return e;
35
45
  };
36
46
  export {
37
- g as FileInputProvider,
38
- j as useOpenFileContext
47
+ S as FileInputProvider,
48
+ q as useOpenFileContext
39
49
  };
@@ -1,18 +1,25 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import { createContext as i, useContext as S } from "react";
3
- import { useFullScreen as F } from "../utils/hooks/useFullScreen.js";
4
- const t = i(void 0), p = ({ elementRef: e, children: o }) => {
5
- const { isFullScreen: r, enterFullScreen: n, exitFullScreen: l, isSupported: u } = F(), c = () => {
6
- r ? l() : e && n(e);
7
- };
8
- return /* @__PURE__ */ s(t.Provider, { value: { isFullScreen: r, toggleFullScreen: c, isSupported: u }, children: o });
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { createContext as S, useCallback as x, useMemo as F, useContext as a } from "react";
3
+ import { useFullScreen as d } from "../utils/hooks/useFullScreen.js";
4
+ const u = S(void 0), v = ({ elementRef: e, children: c }) => {
5
+ const { isFullScreen: r, enterFullScreen: t, exitFullScreen: o, isSupported: n } = d(), l = x(() => {
6
+ r ? o() : e && t(e);
7
+ }, [r, o, t, e]), s = F(
8
+ () => ({
9
+ isFullScreen: r,
10
+ toggleFullScreen: l,
11
+ isSupported: n
12
+ }),
13
+ [r, l, n]
14
+ );
15
+ return /* @__PURE__ */ i(u.Provider, { value: s, children: c });
9
16
  }, f = () => {
10
- const e = S(t);
17
+ const e = a(u);
11
18
  if (!e)
12
19
  throw new Error("useFullScreenContext must be used within a FullScreenProvider");
13
20
  return e;
14
21
  };
15
22
  export {
16
- p as FullScreenProvider,
23
+ v as FullScreenProvider,
17
24
  f as useFullScreenContext
18
25
  };
@@ -1,16 +1,19 @@
1
- import { jsx as a } from "react/jsx-runtime";
2
- import { createContext as u, useContext as s, useState as c } from "react";
3
- import { useInitialStateContext as i } from "./InitialStateContext.js";
4
- const e = u({
1
+ import { jsx as u } from "react/jsx-runtime";
2
+ import { createContext as s, useContext as c, useState as i, useEffect as l } from "react";
3
+ import { useInitialStateContext as C } from "./InitialStateContext.js";
4
+ import { useEventCallbackContext as P } from "./EventCallbackContext.js";
5
+ const n = s({
5
6
  currentPage: 1,
6
7
  setCurrentPage: () => {
7
8
  }
8
- }), C = () => s(e), x = ({ children: t }) => {
9
- const { initialPage: r = 1 } = i(), [o, n] = c(r);
10
- return /* @__PURE__ */ a(e.Provider, { value: { currentPage: o, setCurrentPage: n }, children: t });
9
+ }), p = () => c(n), b = ({ children: r }) => {
10
+ const { initialPage: o = 1 } = C(), [t, a] = i(o), { onPageChange: e } = P();
11
+ return l(() => {
12
+ e && e(t);
13
+ }, [t, e]), /* @__PURE__ */ u(n.Provider, { value: { currentPage: t, setCurrentPage: a }, children: r });
11
14
  };
12
15
  export {
13
- e as GlobalCurrentPage,
14
- x as GlobalCurrentPageProvider,
15
- C as useGlobalCurrentPage
16
+ n as GlobalCurrentPage,
17
+ b as GlobalCurrentPageProvider,
18
+ p as useGlobalCurrentPage
16
19
  };
@@ -1,18 +1,31 @@
1
- import { jsx as n } from "react/jsx-runtime";
2
- import { createContext as s, useContext as c } from "react";
3
- import { useDocumentContext as l } from "./RPDocumentContext.js";
4
- import { useHighlight as u } from "../utils/hooks/useHighlight.js";
5
- const o = s(void 0), p = ({ children: t }) => {
6
- const { pdf: i } = l(), { highlight: e, highlightMatches: r, highlightKeywords: h, clear: g } = u(i);
7
- return /* @__PURE__ */ n(o.Provider, { value: { highlight: e, highlightMatches: r, highlightKeywords: h, clear: g }, children: t });
8
- }, C = () => {
9
- const t = c(o);
1
+ import { jsx as p } from "react/jsx-runtime";
2
+ import { createContext as g, useContext as n } from "react";
3
+ import { useDocumentContext as s } from "./RPDocumentContext.js";
4
+ import { useHighlight as c } from "../utils/hooks/useHighlight.js";
5
+ import "../utils/hooks/useLoadPdf.js";
6
+ import "pdfjs-dist";
7
+ import "../utils/types.js";
8
+ import "../th_TH-d627cd51.js";
9
+ import "../utils/getThumbnailViewport.js";
10
+ import "./ConfigContext.js";
11
+ import "./DocumentPasswordContext.js";
12
+ import "../utils/appConsole.js";
13
+ import "../utils/hooks/usePdfProperties.js";
14
+ import "../utils/convertPdfDate.js";
15
+ import "../utils/formatFileSize.js";
16
+ import "../utils/highlight.js";
17
+ import "../utils/charators.js";
18
+ const o = g(void 0), M = ({ children: t }) => {
19
+ const { pdf: i } = s(), { highlight: r, highlightMatches: e, highlightKeywords: h, clear: m } = c(i);
20
+ return /* @__PURE__ */ p(o.Provider, { value: { highlight: r, highlightMatches: e, highlightKeywords: h, clear: m }, children: t });
21
+ }, k = () => {
22
+ const t = n(o);
10
23
  if (!t)
11
24
  throw new Error("useHighlightContext must be used within a HighlightProvider");
12
25
  return t;
13
26
  };
14
27
  export {
15
28
  o as HighlightContext,
16
- p as HighlightProvider,
17
- C as useHighlightContext
29
+ M as HighlightProvider,
30
+ k as useHighlightContext
18
31
  };
@@ -1,6 +1,7 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
2
  import { createContext as s, useContext as i } from "react";
3
3
  import { useLicense as c } from "../utils/hooks/useLicense.js";
4
+ import "../utils/appConsole.js";
4
5
  const e = s({ isValid: !1 }), a = () => i(e), f = ({
5
6
  children: t,
6
7
  licenseKey: o
@@ -1,13 +1,14 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { createContext as d, useContext as i } from "react";
3
- import { appConsole as m } from "../utils/appConsole.js";
2
+ import { createContext as i, useContext as m } from "react";
3
+ import { appConsole as d } from "../utils/appConsole.js";
4
4
  import { LoaderIcon as s } from "../components/icons/LoaderIcon.js";
5
- const t = d({
5
+ import "../clsx-0c6e471a.js";
6
+ const t = i({
6
7
  LoaderImageComponent: void 0
7
- }), u = () => {
8
- const o = i(t);
9
- return typeof o.LoaderImageComponent > "u" && m.error("Please use this hooks inside children component of RPProvider"), o;
10
- }, C = ({ children: o, loaderImage: e }) => {
8
+ }), C = () => {
9
+ const o = m(t);
10
+ return typeof o.LoaderImageComponent > "u" && d.error("Please use this hooks inside children component of RPProvider"), o;
11
+ }, x = ({ children: o, loaderImage: e }) => {
11
12
  const n = () => e || /* @__PURE__ */ r(s, {});
12
13
  return /* @__PURE__ */ r(
13
14
  t.Provider,
@@ -21,6 +22,6 @@ const t = d({
21
22
  };
22
23
  export {
23
24
  t as LoaderContext,
24
- C as LoaderProvider,
25
- u as useLoaderContext
25
+ x as LoaderProvider,
26
+ C as useLoaderContext
26
27
  };
@@ -1,38 +1,34 @@
1
- import { jsx as c } from "react/jsx-runtime";
2
- import { createContext as f, useContext as d, useEffect as s } from "react";
3
- import { appConsole as m } from "../utils/appConsole.js";
4
- import { useLocalization as p } from "../utils/hooks/useLocalization.js";
5
- const r = f({
1
+ import { jsx as f } from "react/jsx-runtime";
2
+ import { createContext as m, useContext as u, useEffect as i, useMemo as p } from "react";
3
+ import { appConsole as d } from "../utils/appConsole.js";
4
+ import { useLocalization as x } from "../utils/hooks/useLocalization.js";
5
+ import "../th_TH-d627cd51.js";
6
+ const a = m({
6
7
  localeMessages: {}
7
- }), C = () => {
8
- const e = d(r);
9
- return typeof e.localeMessages > "u" && m.error("Please use this hooks inside children component of RPProvider"), e;
10
- }, P = ({
8
+ }), M = () => {
9
+ const e = u(a);
10
+ return typeof e.localeMessages > "u" && d.error("Please use this hooks inside children component of RPProvider"), e;
11
+ }, g = ({
11
12
  children: e,
12
13
  locale: o = "en_US",
13
14
  localization: t
14
15
  }) => {
15
- const {
16
- setLocale: n,
17
- localeMessages: i,
18
- addLocalization: a
19
- } = p(o);
20
- return s(() => {
21
- o && n(o);
22
- }, [o]), s(() => {
23
- t && a(t);
24
- }, [t]), /* @__PURE__ */ c(
25
- r.Provider,
26
- {
27
- value: {
28
- localeMessages: i
29
- },
30
- children: e
31
- }
16
+ const { setLocale: s, localeMessages: n, addLocalization: r } = x(o);
17
+ i(() => {
18
+ o && s(o);
19
+ }, [o, s]), i(() => {
20
+ t && r(t);
21
+ }, [t, r]);
22
+ const c = p(
23
+ () => ({
24
+ localeMessages: n
25
+ }),
26
+ [n]
32
27
  );
28
+ return /* @__PURE__ */ f(a.Provider, { value: c, children: e });
33
29
  };
34
30
  export {
35
- r as LocalizationContext,
36
- P as LocalizationProvider,
37
- C as useLocalizationContext
31
+ a as LocalizationContext,
32
+ g as LocalizationProvider,
33
+ M as useLocalizationContext
38
34
  };
@@ -1,25 +1,43 @@
1
- import { jsx as i } from "react/jsx-runtime";
2
- import { createContext as R, useContext as m, useState as f, useEffect as p, useMemo as P } from "react";
3
- import { useDocumentContext as c } from "./RPDocumentContext.js";
4
- import { useRotationContext as l } from "./RotationContext.js";
5
- const g = R({
1
+ import { jsx as u } from "react/jsx-runtime";
2
+ import { createContext as R, useContext as c, useState as f, useEffect as l, useMemo as P } from "react";
3
+ import { useDocumentContext as x } from "./RPDocumentContext.js";
4
+ import { useRotationContext as C } from "./RotationContext.js";
5
+ import { useEventCallbackContext as d } from "./EventCallbackContext.js";
6
+ import "../utils/hooks/useLoadPdf.js";
7
+ import "pdfjs-dist";
8
+ import "../utils/types.js";
9
+ import "../th_TH-d627cd51.js";
10
+ import "../utils/getThumbnailViewport.js";
11
+ import "./ConfigContext.js";
12
+ import "./DocumentPasswordContext.js";
13
+ import "../utils/appConsole.js";
14
+ import "../utils/hooks/usePdfProperties.js";
15
+ import "../utils/convertPdfDate.js";
16
+ import "../utils/formatFileSize.js";
17
+ import "./InitialStateContext.js";
18
+ const p = R({
6
19
  singlePageRotate: {},
7
20
  setSinglePageRotate: () => {
8
21
  },
9
22
  pageRotate: {}
10
- }), S = () => {
11
- const { singlePageRotate: r, setSinglePageRotate: e, pageRotate: a } = m(g);
12
- return { singlePageRotate: r, setSinglePageRotate: e, pageRotate: a };
13
- }, b = ({ children: r }) => {
14
- const [e, a] = f({}), { rotate: n } = l(), { pages: t } = c();
15
- p(() => {
16
- t && a({});
17
- }, [t]);
18
- const u = P(() => t ? Array.from(t.values()).reduce((s, o) => (s[o.page.pageNumber] = e[o.page.pageNumber] ? (n + e[o.page.pageNumber] + o.defaultRotation) % 360 : (n + o.defaultRotation) % 360, s), {}) : {}, [n, t, e]);
19
- return /* @__PURE__ */ i(g.Provider, { value: { singlePageRotate: e, setSinglePageRotate: a, pageRotate: u }, children: r });
23
+ }), G = () => {
24
+ const { singlePageRotate: a, setSinglePageRotate: t, pageRotate: r } = c(p);
25
+ return { singlePageRotate: a, setSinglePageRotate: t, pageRotate: r };
26
+ }, H = ({ children: a }) => {
27
+ const [t, r] = f({}), { rotate: n } = C(), { pages: e } = x(), { onRotate: i } = d();
28
+ l(() => {
29
+ e && r({});
30
+ }, [e]);
31
+ const g = P(() => {
32
+ if (!e)
33
+ return {};
34
+ const s = Array.from(e.values()).reduce((m, o) => (m[o.page.pageNumber] = t[o.page.pageNumber] ? (n + t[o.page.pageNumber] + o.defaultRotation) % 360 : (n + o.defaultRotation) % 360, m), {});
35
+ return i && i(s), s;
36
+ }, [n, e, t, i]);
37
+ return /* @__PURE__ */ u(p.Provider, { value: { singlePageRotate: t, setSinglePageRotate: r, pageRotate: g }, children: a });
20
38
  };
21
39
  export {
22
- g as PagesRotateContext,
23
- b as PagesRotateProvider,
24
- S as usePagesRotateContext
40
+ p as PagesRotateContext,
41
+ H as PagesRotateProvider,
42
+ G as usePagesRotateContext
25
43
  };
@@ -1,11 +1,39 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
- import { t as p, P as e, u as P } from "../ToolbarLayout.module-c588d36b.js";
3
+ import { c as I, P as J, u as K } from "../PaginationContext-9217cab4.js";
4
4
  import "./RPDocumentContext.js";
5
5
  import "../utils/appConsole.js";
6
6
  import "./GlobalCurrentPage.js";
7
+ import "../utils/types.js";
8
+ import "../th_TH-d627cd51.js";
9
+ import "./ScrollModeContext.js";
10
+ import "./InitialStateContext.js";
11
+ import "./ViewModeContext.js";
12
+ import "./VirtualScrollContext.js";
13
+ import "./VirtualGridContext.js";
14
+ import "../utils/smoothScrollTo.js";
15
+ import "./DimensionPagesContext.js";
16
+ import "./ZoomContext.js";
17
+ import "../utils/constants.js";
18
+ import "../utils/getZoomLevel.js";
19
+ import "./LayoutContainerContext.js";
20
+ import "./RotationContext.js";
21
+ import "../utils/hooks/useLoadPdf.js";
22
+ import "pdfjs-dist";
23
+ import "../utils/getThumbnailViewport.js";
24
+ import "./ConfigContext.js";
25
+ import "./DocumentPasswordContext.js";
26
+ import "../utils/hooks/usePdfProperties.js";
27
+ import "../utils/convertPdfDate.js";
28
+ import "../utils/formatFileSize.js";
29
+ import "../utils/hooks/useDebounce.js";
30
+ import "./EventCallbackContext.js";
31
+ import "./PagesRotateContext.js";
32
+ import "./SmoothScrollContext.js";
33
+ import "../utils/getScrollDistance.js";
34
+ import "../utils/calculatePage.js";
7
35
  export {
8
- p as PaginationContext,
9
- e as PaginationProvider,
10
- P as usePaginationContext
36
+ I as PaginationContext,
37
+ J as PaginationProvider,
38
+ K as usePaginationContext
11
39
  };